Slide 1

Slide 1 text

0DUUI#JP1BDLBUIPO5BLBUTVHV,PTVHJ 1ZUIPOύοέʔδͷ1Z1*ొ࿥खॱͷ঺հ 5BLBUTVHV,PTVHJ !CMBDL@UBOL@UPQ ౦ژ޻ۀେֶ৘ใཧ޻ֶӃ৘ใ޻ֶܥେ্ݚڀࣨ #JP1BDLBUIPO 0DUPCFSUI 2&11*ͷ։ൃ͔Β1Z1*ొ࿥·Ͱ

Slide 2

Slide 2 text

0DUUI#JP1BDLBUIPO5BLBUTVHV,PTVHJ "HFOEB ݚڀࣨ঺հ ݚڀ঺հ 1Z1*ͷొ࿥·ͰͷಓͷΓ 1BDLBHF࡞੒ࣄલ४උ 1BDLBHFιʔεͷ࡞੒ 1BDLBHFͷϏϧυ 1Z1*΁ͷVQMPBE .BLFpMFʹΑΔλεΫઃఆ

Slide 3

Slide 3 text

0DUUI#JP1BDLBUIPO5BLBUTVHV,PTVHJ ݚڀࣨ঺հ ݚڀ঺հ 1Z1*ͷొ࿥·ͰͷಓͷΓ 1BDLBHF࡞੒ࣄલ४උ 1BDLBHFιʔεͷ࡞੒ 1BDLBHFͷϏϧυ 1Z1*΁ͷVQMPBE .BLFpMFʹΑΔλεΫઃఆ "HFOEB

Slide 4

Slide 4 text

0DUUI#JP1BDLBUIPO5BLBUTVHV,PTVHJ ݚڀࣨ঺հ IUUQTXXXMJDUJUFDIBDKQ େ্ݚڀֶࣨੜࣨɹύʔιφϧϒʔε΋͋Γ·͢ ౦ژ޻ۀେֶ৘ใཧ޻ֶӃ৘ใ޻ֶܥେ্ݚڀࣨ ݚڀࣄྫ w λϯύΫ࣭ؒ૬ޓ࡞༻༧ଌγεςϜ.&("%0$,ͷ։ൃ w ໢ཏతͳ11*༧ଌσʔλϕʔε.&("%0$,8FCͷ։ൃ w ௿෼ࢠԽ߹෺ͷༀޮɾ׆ੑɾ"%.&5༧ଌ w ʮༀΒ͠͞ʯΛදݱ͢Δ౷ܭϞσϧͷ։ൃ w ϥϯΫֶशʹΑΔ-#%%εΫϦʔχϯά๏ͷ։ൃ w ૑ༀࢸదϖϓνυͷεΫϦʔχϯάͷͨΊͷٕज़։ൃ w 546#".&ʹΑΔ(16εʔύʔίϯϐϡʔςΟϯά ٕज़ͷ։ൃ େ্ݚͰ͸όΠΦΠϯϑΥϚςΟΫε΍૑ༀ෼໺ʹ܎Δଟ͘ͷςʔϚΛѻ͍ͬͯ·͢ɻ

Slide 5

Slide 5 text

0DUUI#JP1BDLBUIPO5BLBUTVHV,PTVHJ ݚڀࣨ঺հ ݚڀ঺հ 1Z1*ͷొ࿥·ͰͷಓͷΓ 1BDLBHF࡞੒ࣄલ४උ 1BDLBHFιʔεͷ࡞੒ 1BDLBHFͷϏϧυ 1Z1*΁ͷVQMPBE .BLFpMFʹΑΔλεΫઃఆ "HFOEB

Slide 6

Slide 6 text

0DUUI#JP1BDLBUIPO5BLBUTVHV,PTVHJ 2&11*ͱ͸ 11*Λඪతͱ͢ΔԽ߹෺͸ɺैདྷͷ૑ༀඪతΛλʔήοτͱ͢ΔԽ߹෺ͱ͸ಛੑ͕ҟͳΔͨΊɺɹ ैདྷͷࢦඪͰ͸11*ΛඪతʹͰ͖ͦ͏ͳ౓߹͍ΛఆྔతʹධՁ͢Δ͜ͱ͕ࠔ೉Ͱ͋Δ͜ͱ͕͜Ε·Ͱͷ ݚڀͰ஌ΒΕ͍ͯ·͢ɻ ͦ͜Ͱେ্ݚڀࣨͰ͸ɺ Խ߹෺ͷ11*ΛඪతʹͰ͖ͦ͏ͳ౓߹͍ΛఆྔతʹධՁ͢Δࢦඪ2&11*Λ։ൃ͠·ͨ͠ɻ 2VBOUJUBUJWF&TUJNBUF*OEFYGPS&BSMZ4UBHF4DSFFOJOHPG$PNQPVOET5BSHFUJOH1SPUFJO1SPUFJO*OUFSBDUJPOT 2&11*ͷݚڀ֓ཁͱ։ൃͨ͠2&11*ύοέʔδΛ1Z1*ʹొ࿥ͨ͠खॱΛ঺հ͠·͢ɻ "EW"QQM#JPJOGPSN$IFN r *OU+.PM4DJ ͜ͷԽ߹෺͸11*ΛඪతʹͰ͖ͦ͏ʁ఺ຬ఺தԿ఺͘Β͍͔ͳʁ 11* ڵຯ͋ΔԽ߹෺ ,PTVHJ 50IVF . 2VBOUJUBUJWF&TUJNBUF*OEFYGPS&BSMZ4UBHF4DSFFOJOHPG$PNQPVOET5BSHFUJOH1SPUFJO1SPUFJO*OUFSBDUJPOT *OU+.PM4DJ IUUQTEPJPSHJKNT IUUQTHJUIVCDPNPIVFMBC2&11*

Slide 7

Slide 7 text

0DUUI#JP1BDLBUIPO5BLBUTVHV,PTVHJ λϯύΫ࣭ؒ૬ޓ࡞༻ 11* ͱ͸ 1SPUFJOTDBOGVODUJPOPOUIFJSPXO CVUUIFZBMTPQFSGPSNTQFDJGJDGVODUJPOTUISPVHI QSPUFJOQSPUFJOJOUFSBDUJPO 11* UPQFSGPSNTQFDJGJDGVODUJPOT FHTJHOBMUSBOTEVDUJPO $SFBUFEXJUI#JP3FOEFSDPN

Slide 8

Slide 8 text

0DUUI#JP1BDLBUIPO5BLBUTVHV,PTVHJ ૑ༀඪతͱͯ͠ͷ11* #JP(3*%%BUBCBTF4UBUJTUJDT $VSSFOU#VJME4UBUJTUJDT 0DUPCFS $SFBUFEXJUI#JP3FOEFSDPN *OSFDFOUZFBST 11*TIBWFBUUSBDUFEBUUFOUJPOBTESVHUBSHFUTBNPOHWBSJPVTUBSHFUT JOESVHEFWFMPQNFOU ैདྷͷ૑ༀඪత d (1$3 νϟωϧ ߬ૉ సࣸҼࢠ 11*ʹΑͬͯ ݕ౼ՄೳʹͳΔ૑ༀඪత d

Slide 9

Slide 9 text

0DUUI#JP1BDLBUIPO5BLBUTVHV,PTVHJ 11*૑ༀͷ೉͠͞ *UJTEJGGJDVMUUPEFTJHOESVHTGPS11*TCBTFEPODPOWFOUJPOBMJOEFY TVDIBT2&% CFDBVTFUIFJSQIZTJDPDIFNJDBMQSPQFSUJFTBSFWFSZEJGGFSFOUGSPNUIPTFPG DPOWFOUJPOBMESVHUBSHFUT $VSS0QJO$IFN#JPM WPM OP QQr *OU+.PM4DJ OPO11*UBSHFUJOH 11*UBSHFUJOH 2021). Considering the number of known PPIs, structural information on PPIs likely re- mains insufficient. We hypothesized that information on the target proteins and their ligand compounds would be sufficient without requiring three-dimensional structures. Therefore, we used iPPI-DB [29], which was manually curated from the literature. In total, 2361 PPI-targeting compounds are registered in this database (as of 21 April 2021), which are primarily derived from PPI inhibition or stabilization experiments. The num- ber of compounds registered in DrugBank was 43, which is approximately 1.8% of the total. The quality and quantity of the data meet the requirements of the dataset for model- ing QEPPI. We built the QEPPI model using data selected after clustering for non-redundancy (see Methods for details). The histograms of the distributions of seven molecular physicochemi- cal properties, MW, ALogP, HBD, HBA, TPSA, ROTB, and AROM, are shown in Figure 1. The distribution peaks and optimized weights wi of each physicochemical property are shown in Table 3. (a) MW (b) ALogP (c) HBD (d) HBA (e) TPSA (f) ROTB (g) AROM Figure 1. Histograms of seven molecular physicochemical properties for a set of non-redundant compounds of iPPI-DB. Molecular weight (MW) (a), LogP value estimated by Ghose-Crippen method (ALogP) (b), number of hydrogen bond donors (HBD) (c), number of hydrogen bond acceptors (HBA) (d), topological molecular polar surface area (TPSA) (e), number of rotatable bonds (ROTB) (f), and number of aromatic rings (AROM) (g). The solid red lines describe the asymmetric double sigmoid (ADS) function (1) used to model the QEPPI histograms. The black dashed lines describe the ADS function used to model the quantitative estimate of drug-likeness (QED) histograms. ,PTVHJ 50IVF . 2VBOUJUBUJWF&TUJNBUF*OEFYGPS&BSMZ4UBHF4DSFFOJOHPG$PNQPVOET5BSHFUJOH1SPUFJO1SPUFJO*OUFSBDUJPOT *OU+.PM4DJ IUUQTEPJPSHJKNT *OU+.PM4DJ 'JHVSF

Slide 10

Slide 10 text

0DUUI#JP1BDLBUIPO5BLBUTVHV,PTVHJ ҩༀ඼ʹର͢Δैདྷͷࢦඪ 2&%2VBOUJUBUJWF&TUJNBUFPG%SVHMJLFOFTT 2&%JTUIFNPTUDPNNPOMZVTFERVBOUJUBUJWFESVHFGGJDBDZBTTFTTNFOUNFUIPE 2&%NPEFMTESVHMJLFQSPQFSUJFTVTJOHEBUBBWBJMBCMFGSPNPSBMMZBENJOJTUFSFE ESVHTBMSFBEZBQQSPWFECZUIF64'PPEBOE%SVH"ENJOJTUSBUJPO 30-JQJOTLJ`T3VMFPG'JWF 5IFSVMFTUBUFTUIBUBDPNQPVOEJTNPSFMJLFMZUPFYIJCJUQPPSBCTPSQUJPOPS QFSNFBUJPOXIFOUXPPSNPSFPGUIFGPMMPXJOHQIZTJDPDIFNJDBMDSJUFSJB "EW%SVH%FMJW3FW WPM JTTVFTr QQr /BU$IFN r w .PMFDVMBSXFJHIU w "-PH1 w 5IFOVNCFSPGIZESPHFOCPOEBDDFQUPST w 5IFOVNCFSPGIZESPHFOCPOEEPOPST 3VMFPG'JWFDSJUFSJB

Slide 11

Slide 11 text

0DUUI#JP1BDLBUIPO5BLBUTVHV,PTVHJ .PSFMMJet alQSPQPTFEUIF l3VMFPG'PVSz 30 UPFWBMVBUF11*JOIJCJUPST 5IJTQSPQPTBMXBTCBTFEPOBTUBUJTUJDBMBOBMZTJT PG11*JOIJCJUPSTJO1*EC 30DPOTJTUFEPGUIFGPMMPXJOHGPVSDSJUFSJB 3VMFPG'PVS11*્֐ࡎͷϧʔϧϕʔεͷࢦඪ $VSS0QJO$IFN#JPM WPM OP QQr w .PMFDVMBSXFJHIU w "-PH1 w 5IFOVNCFSPGIZESPHFOCPOEBDDFQUPST w 5IFOVNCFSPGSJOHT 3VMFPG'PVSDSJUFSJB 3FQSFTFOUBUJWFTFUPG11*JOIJCJUPST 5/'Ћ5/'3D 5/'3"5/'# #DM#BL /$ 9JBQ$BTQBTF 9JBQ4NBD #* )17&& )%.Q %*; 9%.Q *.: )%.Q 88

Slide 12

Slide 12 text

0DUUI#JP1BDLBUIPO5BLBUTVHV,PTVHJ 11*Λඪతͱ͢ΔԽ߹෺ΛఆྔධՁ2&11*ͷ։ൃ *OUIJTTUVEZ XFEFWFMPQFEBOJOEFYDBMMFE2&11*UPTPMWFUIFTFQSPCMFNT 2VBOUJUBUJWF&TUJNBUF*OEFYGPS&BSMZ4UBHF4DSFFOJOHPG$PNQPVOET5BSHFUJOH1SPUFJO1SPUFJO*OUFSBDUJPO 11*UBSHFUJOHDPNQPVOET 5SBJOEBUBTFU f(x) .PEFMJOH $PNQPVOETPGJOUFSFTU 1SPCMFNT w 2&%JTNPEFMFEGPSPSBMESVHT5IFESVHMJLFOFTTSFQSFTFOUTJTPSBMESVHMJLF w 30JTVTFGVMGPSGJMUFSJOH11*JOIJCJUPST CVUJUJTOPUXFMMRVBOUJUBUJWF SVMFCBTFE 2&11*4DPSF

Slide 13

Slide 13 text

0DUUI#JP1BDLBUIPO5BLBUTVHV,PTVHJ 5IFTFSFTVMUTTVHHFTUUIBU30 BOJOEFYPGEJTDSFUFWBMVF DPVMECFFYUFOEFEUPBO JOEFYPGDPOUJOVPVTWBMVF5IFSFTVMUTTVHHFTUFEUIBU2&11*JTBHFOFSBMFYUFOTJPOPG UIF30DPODFQU 2&11*͸3VMFPG'PVSͷ֦ு֓೦ 2&% 2&%@JOW 2&11* Version September 30, 2021 submitted to Int. J. Mol. Sci. 9 o Table 5: Precision, Recall, and F-score values for one violation of RO4 and QEPPI sco with a threshold value of 0.5196. Precision Recall F-score RO4 0.405 0.508 0.451 QEPPI 0.379 0.735 0.501 *OU+.PM4DJ 'JHVSF *OU+.PM4DJ 'JHVSF *OU+.PM4DJ 5BCMF *OU+.PM4DJ

Slide 14

Slide 14 text

0DUUI#JP1BDLBUIPO5BLBUTVHV,PTVHJ ྟচϑΣʔζͷԽ߹෺ͱࢢൢༀ΁ͷ2&11*ͷద༻ 5IFEJTUSJCVUJPOPG2&11*XBTGPVOEUPCFTJHOJGJDBOUMZEJGGFSFOUCFUXFFOBQQSPWFE 11*UBSHFUFEESVHTBOE11*UBSHFUFEDPNQPVOETJOUIFDMJOJDBMQIBTF 34$.FE$IFN EPJ%.%" *OU+.PM4DJ $MJOJDBMUSJBM "QQSPWFE OPO11* $POUSPM 1BDMJUBYFM 2&11* .JDSPUVCVMF .BSLFUTUBSUJO 3PNJEFQTJO 2&11* )%"$1*, .BSLFUTUBSUJO 5FNTJSPMJNVT 2&11* N503 .BSLFUTUBSUJO .BSLFUFEFYBNQMFT 7FSDJSOPO 2&11* $$3 1IBTF *EBTBOVUMJO 2&11* Q.EN 1IBTF "QBCFUBMPOF 2&11* #&5 1IBTF $MJOJDBMUSJBMFYBNQMFT *OU+.PM4DJ 'JHVSF

Slide 15

Slide 15 text

0DUUI#JP1BDLBUIPO5BLBUTVHV,PTVHJ ྟচϑΣʔζͷԽ߹෺ͱࢢൢༀ΁ͷ2&11*ͷద༻ 3FHBSEMFTTPGUIFZFBS UIF2&11*TDPSFTPGl$MJOJDBMUSJBMzDPNQPVOETIBWFSFNBJOFEIJHI 5IJTJTDPOTJTUFOUXJUIUIFSFDFOUUSFOEPGIJHIFS2&11*TDPSFTGPS.BSLFUFEESVHT 34$.FE$IFN EPJ%.%" *OU+.PM4DJ $YDWURPERSDJ &DED]LWD[HO 'LPHWK\OIXPDUDWH 'RFHWD[HO (OWURPERSDJ (ULEXOLQPHV\ODWH (YHUROLPXV /HYHWLUDFHWDP /LILWHJUDVW /XVXWURPERSDJ 0DUDYLURF 3DFOLWD[HO 3LPHFUROLPXV 3OHUL[DIRU 5RPLGHSVLQ 6HOLQH[RU 5DSDP\FLQ 7DFUROLPXV 7DIDPLGLV 7HPVLUROLPXV 7LURILEDQ 9HQHWRFOD[ 9LQEODVWLQH 9RULQRVWDW

Slide 16

Slide 16 text

0DUUI#JP1BDLBUIPO5BLBUTVHV,PTVHJ "TBGVUVSFQSPTQFDU 2&11*DBOCFVTFEBTBSFXBSEJOTFRVFODFCBTFENPMFDVMBS HFOFSBUJPONPEFMTVTJOHSFJOGPSDFNFOUMFBSOJOHBOEBTBDPOEJUJPOGPSTFRVFODF CBTFENPMFDVMBSHFOFSBUJPONPEFMTVTJOHDPOEJUJPOBM("/PS7"& XIJDIXJMMFOBCMF NPMFDVMBSEFTJHOXJUIIJHI11*UBSHFUJOHDPNQPVOEQSPQFSUJFT 5PXBSETUIFBQQMJDBUJPOPGNPMFDVMBSHFOFSBUJPOCZ3- ("/BOE7"& &YBNQMFPGDPNCJOBUJPOPG2&11* XJUIDPOEJUJPOBM7"& 6TF2&11*TDPSFBTBDPOEJUJPO .PMDVMBSQIZTJDPDIFNJDBMQSPQFSUZ .8 "-PH1 514" ʜ 2&11*TDPSF -BUFOU TQBDF &ODPEFS %FDPEFS (FOFSBUPS %JTDSJNJOBUPS 3FJOGPSDFNFOU MFBSOJOH .PMDVMBS(SBQI [dQ [ PS PS &WBMVBUFXJUI2&11*TDPSF &YBNQMFPGDPNCJOBUJPOPG2&11* XJUISFJOGPSDFNFOUMFBSOJOHBOE("/

Slide 17

Slide 17 text

0DUUI#JP1BDLBUIPO5BLBUTVHV,PTVHJ ݚڀࣨ঺հ ݚڀ঺հ 1Z1*ͷొ࿥·ͰͷಓͷΓ 1BDLBHF࡞੒ࣄલ४උ 1BDLBHFιʔεͷ࡞੒ 1BDLBHFͷϏϧυ 1Z1*΁ͷVQMPBE .BLFpMFʹΑΔλεΫઃఆ "HFOEB

Slide 18

Slide 18 text

0DUUI#JP1BDLBUIPO5BLBUTVHV,PTVHJ 1Z1*ͷొ࿥·ͰͷಓͷΓɿઌʹΰʔϧ ࠷ऴతʹɺ1Z1*ʹొ࿥͢Δͱ͜Μͳײ͡ʹͳΓ·͢ɻࠓճ͸͜ΕΛ໨ࢦ͠·͢ɻ IUUQTQZQJPSHQSPKFDU2&11*

Slide 19

Slide 19 text

0DUUI#JP1BDLBUIPO5BLBUTVHV,PTVHJ 1Z1*ͷొ࿥·ͰͷಓͷΓɿେ·͔ͳྲྀΕ 1BDLBHFԽʹඞཁͳϞδϡʔϧͷΠϯετʔϧ 1BDLBHFιʔεͷ࡞੒ @@JOJU@@QZͷ࡞੒ ϝΠϯιʔεͷ࡞੒ ."/*'&45JOͷ࡞੒ TFUVQQZͷ࡞੒ 3&"%.&NEͷ࡞੒ˡ͜Ε͸׬ྃࡁΈͱ͍͏લఏ -*$&/4&ͷ࡞੒ɹɹˡ͜Ε͸׬ྃࡁΈͱ͍͏લఏ 5XJOFΛ࢖ͬͯ1Z1*ʹొ࿥

Slide 20

Slide 20 text

0DUUI#JP1BDLBUIPO5BLBUTVHV,PTVHJ 1Z1*ͷొ࿥·ͰͷಓͷΓɿ1BDBLHF࡞੒ࣄલ४උ # ඞཁͳύοέʔδΛΠϯετʔϧ͓ͯ͘͠ % python3 -m pip install --upgrade setuptools wheel twine جຊతʹɺQBDLBHFԽʹඞཁͳɺTFUVQUPPMT ͱXIFFM͸JOTUBMMࡁΈͳ͜ͱ͕ଟ͍Ͱ͕͢ɺ VQHSBEFΛߦ͍·͢ɻ ·ͨޙड़͠·͕͢1Z1*ͷVQMPBE༻ʹUXJOFΛ ࢖͏ͷͰɺͪ͜Β΋Πϯετʔϧ͠·͢ɻ ஫ҙ Ϟδϡʔϧͷ࣮ߦ؀ڥͱ͸ผʹ1Z1*΁ͷ VQMPBE༻ʹQZFOWͳͲͰ؀ڥΛ੾Γ෼͚͔ͯ Β࣮ߦͨ͠΄͏͕ྑ͍͔ͱࢥ͍·͢ɻ

Slide 21

Slide 21 text

0DUUI#JP1BDLBUIPO5BLBUTVHV,PTVHJ 1Z1*ͷొ࿥·ͰͷಓͷΓɿ@@JOJU@@QZͷ࡞੒ # ϑΝΠϧߏ଄ % tree . !"" setup.py !"" MANIFEST.in !"" QEPPI ← ͜͜ΛϞδϡʔϧ໊ͱ߹Θ͓ͤͯ͘ͱ٢ # !"" __init__.py # !"" QEPPI.py # !"" constant.py # !"" util.py # %"" version.py !"" README.md !"" LICENSE @@JOJU@@QZύοέʔδجຊ৘ใΛهड़͠·͢ɻ w ίϐʔϥΠτ w όʔδϣϯ w ϥΠηϯε w ஶ࡞ऀ໊ w ஶ࡞ऀϝʔϧΞυϨε w 63-ʢ(JU)VCͷ63-ͳͲʣ ϙΠϯτ @@JOJU@@QZͷ๯಄ͷ GSPNϑΝΠϧJNQPSU Λ΍͓͔ͬͯͳ͍ͱ͏·͍͔͘ͳ͍ͷͰɺ๨Εͣʹɻ ύοέʔδͷجຊ৘ใΛهड़ # __init__.pyͷྫ from .constant import * from .util import * from .QEPPI import * __copyright__ = "Copyright (C) 2021 Ohuelab” __version__ = "0.1.10" __license__ = "MIT" __author__ = "blacktanktop" __author_email__ = "[email protected]" __url__ = "http://github.com/ohuelab/QEPPI"

Slide 22

Slide 22 text

0DUUI#JP1BDLBUIPO5BLBUTVHV,PTVHJ 1Z1*ͷొ࿥·ͰͷಓͷΓɿ.BJOιʔεͷ࡞੒ # ϑΝΠϧߏ଄ % tree . !"" setup.py !"" MANIFEST.in !"" QEPPI ← ͜͜ΛϞδϡʔϧ໊ͱ߹Θ͓ͤͯ͘ͱ٢ # !"" __init__.py # !"" QEPPI.py # !"" constant.py # !"" util.py # %"" version.py !"" README.md !"" LICENSE # version.pyͷྫ __version__ = "0.1.10" ύοέʔδʹඞཁͳΫϥεɾؔ਺܈ ؊৺ͷύοέʔδͷ.BJOؔ਺Ͱ͢ɻ ࠓճͰ͸ɺ2&11*Λܭࢉ͢ΔͨΊͷؔ਺܈ʹͳΓ·͢ɻ ·ͨɺWFSTJPOQZʹ͓WFSTJPOΛهࡌ͢Δ͜ͱ΋ՄೳͰ ͢ɻʢ@@JOJU@@QZ͔֎ʹग़͔͢Ͳ͔ͬͪʣ ύοέʔδʹඞཁͳΫϥεɾؔ਺܈ @@JOJU@@QZͰͳ͘͜͜ʹॻ͘͜ͱ΋Մೳ

Slide 23

Slide 23 text

0DUUI#JP1BDLBUIPO5BLBUTVHV,PTVHJ 1Z1*ͷొ࿥·ͰͷಓͷΓɿ."/*'&45JOͷ࡞੒ # ϑΝΠϧߏ଄ % tree . !"" setup.py !"" MANIFEST.in !"" QEPPI ← ͜͜ΛϞδϡʔϧ໊ͱ߹Θ͓ͤͯ͘ͱ٢ # !"" __init__.py # !"" QEPPI.py # !"" constant.py # !"" util.py # %"" version.py !"" README.md !"" LICENSE # MANIFEST.in ͷྫ include *.md exclude README.md include requirements.txt ← setup.pyͰ࢖͏࣌͸ඞͣೖΕΔ ϑΝΠϧߏ଄͸͜ͷ༷ͳܗͰ࿩ΛਐΊ·͢ɻ ."/*'&45JOΦϓγϣϯͰ͢ɻύοέʔδʹ௥Ճɺɹ ·ͨ͸আ֎͢ΔϑΝΠϧΛهड़͠·͢ɻ SFRVJSFNFOUTUYUͳͲɻ -*$&/4& 3&"%.&NETFUVQQZͳͲ͸ࢦఆͤͣͱ΋ উखʹύοέʔδϯά͞Ε·͢ɻऔΓআ͖͍ͨ৔߹͸ FYDMVEFͰؚ͋͑ͯ·ͤͳ͍ͱ͍ͬͨ͜ͱ͕ग़དྷ·͢ɻ ·ͨɺTFUVQQZͷ࢓༷ͰSFRVJSFNFOUTUYUΛ࢖͏৔߹͸ ."/*'&45JOʹॻ͔ͳ͍ͱౖΒΕ·͢ͷͰඞͣॻ͖· ͠ΐ͏ɻ ύοέʔδʹ௥Ճɺ·ͨ͸ আ֎͢ΔϑΝΠϧΛهड़͢Δ

Slide 24

Slide 24 text

0DUUI#JP1BDLBUIPO5BLBUTVHV,PTVHJ 1Z1*ͷొ࿥·ͰͷಓͷΓɿTFUVQQZͷ࡞੒ # ϑΝΠϧߏ଄ % tree . !"" setup.py !"" MANIFEST.in !"" QEPPI ← ͜͜ΛϞδϡʔϧ໊ͱ߹Θ͓ͤͯ͘ͱ٢ # !"" __init__.py # !"" QEPPI.py # !"" constant.py # !"" util.py # %"" version.py !"" README.md !"" LICENSE TFUVQQZύοέʔδ࡞੒৘ใΛهड़͠·͢ɻ ύοέʔδ࡞੒৘ใΛهड़͠·͢ɻ

Slide 25

Slide 25 text

0DUUI#JP1BDLBUIPO5BLBUTVHV,PTVHJ # setup.pyͷྫ from setuptools import setup exec(open("QEPPI/version.py").read()) with open("README.md", "r", encoding="utf-8") as fh: long_description = fh.read() setup( name="QEPPI", version=__version__, author="blacktanktop, author_email=“[email protected]", description="Calculation module of QEPPI", long_description=long_description, long_description_content_type="text/markdown", url="https://github.com/ohuelab/QEPPI/", license="MIT", packages=["QEPPI"], install_requires=[ "rdkit-pypi>=2021.3.1.5", "numpy>=1.19.5", "pandas>=1.1.5", ], classifiers=[ "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Topic :: Scientific/Engineering :: Chemistry", "Topic :: Scientific/Engineering :: Bio-Informatics", ], ) 1Z1*ͷొ࿥·ͰͷಓͷΓɿTFUVQQZͷ࡞੒ TFUVQQZύοέʔδ࡞੒৘ใΛهड़͠·͢ɻ OBNFύοέʔδ໊শ WFSTJPOόʔδϣϯ BVUIPSஶ࡞ऀ໊ BVUIPS@FNBJMஶ࡞ऀͷϝʔϧΞυϨε EFTDSJQUJPO؆୯ͳઆ໌ MPOH@EFTDSJQUJPOৄࡉͷઆ໌ʢ3&"%.&NEʣ VSMύοέʔδͷ(JU)VCͷϦϙδτϦ63- MJDFOTFύοέʔδͷϥΠηϯεʢ.*5ͳͲʣ QBDLBHFTϞδϡʔϧϦετ JOTUBMM@SFRVJSFTґଘؔ܎ͷ͋Δύοέʔδ DMBTTJGJFST෼ྨޠͷϦετʢ1Z1*Ͱ෼ྨϦετ͕͋Δʣ

Slide 26

Slide 26 text

0DUUI#JP1BDLBUIPO5BLBUTVHV,PTVHJ 1Z1*ͷొ࿥·ͰͷಓͷΓɿTFUVQQZͷ࡞੒ # setup.pyͷྫ from setuptools import setup exec(open("QEPPI/version.py").read()) with open("README.md", "r", encoding="utf-8") as fh: long_description = fh.read() setup( name="QEPPI", version=__version__, author="blacktanktop, author_email=“[email protected]", description="Calculation module of QEPPI", long_description=long_description, long_description_content_type="text/markdown", url="https://github.com/ohuelab/QEPPI/", license="MIT", packages=["QEPPI"], install_requires=[ "rdkit-pypi>=2021.3.1.5", "numpy>=1.19.5", "pandas>=1.1.5", ], classifiers=[ "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Topic :: Scientific/Engineering :: Chemistry", "Topic :: Scientific/Engineering :: Bio-Informatics", ], ) ิ଍ ͸WFSJPOQZʹॻ͍ͯ͋ΔWFSTJPOΛಡΈࠐΜͰɺ όʔδϣϯΛม਺Ͱ؅ཧ͢ΔͨΊͰ͢ɻ MPOH@EFTDSJQUJPOͱ͍͏ม਺ʹ3&"%.&NEͷςΩετ ΛಥͬࠐΉ͜ͱͰɺ1Z1*ʹొ࿥ͨ͠ͱ͖ͷը໘Λ 3&"%.&NEͱಉ͡ʹ͢ΔͨΊͷํ๏Ͱ͢ɻ JOTUBMM@SFRVJSFTΛSFRVJSFNFOUTUYUͰࢦఆ͍ͨ͠৔߹͸ ҎԼͷΑ͏ͳઃఆํ๏͕͋Γ·͢ɻ with open("README.md", "r", encoding="utf-8") as fh: long_description = fh.read() exec(open("QEPPI/version.py").read()) def _requires_from_file(filename): return open(filename).read().splitlines() # ্هͷؔ਺Λ࡞͓͍ͬͯͯɺҎԼͷ༷ʹ͢Δɻ install_requires=_requires_from_file("requirements.txt") 3&"%.&NEΛಡΈࠐΜͰɺ MPOH@EFTDSJQUJPO΁ม਺Խ

Slide 27

Slide 27 text

0DUUI#JP1BDLBUIPO5BLBUTVHV,PTVHJ 1Z1*ͷొ࿥·ͰͷಓͷΓɿTFUVQQZͷ࡞੒ # setup.cfgͷྫ [metadata] name = package_name version = attr: src.VERSION description = short package description long_description = file: README.md keywords = foo, bar license = MIT License classifiers = Programming Language :: Python :: 3.7 [options] zip_safe = False include_package_data = True packages = find: scripts = bin/first.py bin/second.py install_requires = pandas numpy; python_version == "3.7" [options.package_data] * = *.md ͓·͚ TFUVQDGHɿ࠷ۙͰ͸TFUVQQZ͸γϯϓϧʹͯ͠ɺ TFUVQDGHͱ͍͏DPOGJHϑΝΠϧʹશ෦ઃఆΛॻ͘ͱ͍ ͏ͷ͕ओྲྀͩͦ͏Ͱ͢ɻ ӈʹྫΛ͓͖ࣔͯ͠·ͨ͠ɻJOJϑΝΠϧͬΆ͍Ͱ͢Ͷɻ ͯ͞ɺ͜ΕͰԼ४උ͕Ͱ͖·ͨ͠ʂ ͋ͱ͸Ϗϧυͯ͠1Z1*ʹVQ͢Δ͚ͩͰ͢ɻ

Slide 28

Slide 28 text

0DUUI#JP1BDLBUIPO5BLBUTVHV,PTVHJ ݚڀࣨ঺հ ݚڀ঺հ 1Z1*ͷొ࿥·ͰͷಓͷΓ 1BDLBHF࡞੒ࣄલ४උ 1BDLBHFιʔεͷ࡞੒ 1BDLBHFͷϏϧυ 1Z1*΁ͷVQMPBE .BLFpMFʹΑΔλεΫઃఆ "HFOEB

Slide 29

Slide 29 text

0DUUI#JP1BDLBUIPO5BLBUTVHV,PTVHJ 1Z1*ͷొ࿥·ͰͷಓͷΓɿͪΐͬͱςετ # ͪΐͬͱςετ % python setup.py install % python >>> import QEPPI >>> QEPPI.__version__ '0.1.10' TFUVQQZJOTUBMMɿ ͜͜·Ͱ͘ΔͱɺϩʔΧϧʹΠϯετʔϧ͕Ͱ͖·͢ɻ QJQMJTUɿ QJQMJTU͢Ε͹ɺύοέʔδ͕Πϯετʔϧ͞Ε͍ͯΔͷ ͕Θ͔Γ·͢ɻ ӈͷΑ͏ʹɺίϚϯυ͔ΒΠϯλϓϦλΛݺͼग़͠ɺ όʔδϣϯ֬ೝͳͲߦͬͯɺಡΈࠐΈ͕ਖ਼ৗ͔֬ೝ͢Δ ͱྑ͍Ͱ͠ΐ͏ɻ

Slide 30

Slide 30 text

0DUUI#JP1BDLBUIPO5BLBUTVHV,PTVHJ 1Z1*ͷొ࿥·ͰͷಓͷΓɿϏϧυͷ४උ # ͪΐͬͱςετ % python setup.py sdist bdist_wheel % tree . !"" setup.py !"" MANIFEST.in !"" QEPPI # !"" QEPPI.py # !"" __init__.py # !"" constant.py # !"" util.py # %"" version.py !"" QEPPI.egg-info # !"" PKG-INFO # !"" SOURCES.txt # !"" dependency_links.txt # !"" requires.txt # %"" top_level.txt !"" build # !"" bdist.macosx-10.12-x86_64 # %"" lib # %"" QEPPI # !"" QEPPI.py # !"" __init__.py # !"" constant.py # !"" util.py # %"" version.py !"" dist # !"" QEPPI-0.1.10-py3-none-any.whl # %"" QEPPI-0.1.10.tar.gz !"" README.md !"" LICENSE TFUVQQZTEJTUɿ ιʔε഑෍෺ UBSH[GJMF Λ࡞੒͠·͢ɻ TFUVQQZCEJTU@XIFFMɿ ϏϧυࡁΈͷ഑෍෺ XIM Λ࡞੒͠·͢ɻ ͜ΕΒͷίϚϯυͰɺύοέʔδΛVQMPBE͢ΔͨΊͷ ϑΝΠϧ͕ੜ੒͞Ε·͢ɻ CEJTU@XIFFMͰ࡞੒͞ΕΔϑΝΠϧ TEJTUͰ࡞੒͞ΕΔϑΝΠϧ TEJTUͰ࡞੒͞ΕΔϑΝΠϧ

Slide 31

Slide 31 text

0DUUI#JP1BDLBUIPO5BLBUTVHV,PTVHJ 1Z1*ͷొ࿥·ͰͷಓͷΓɿιʔεϑΝΠϧͷத਎ # QEPPI-0.1.10.tar.gzͷத਎ . !"" setup.cfg !"" setup.py !"" MANIFEST.in !"" PKG-INFO !"" QEPPI # !"" QEPPI.py # !"" __init__.py # !"" constant.py # !"" util.py # %"" version.py !"" QEPPI.egg-info # !"" PKG-INFO # !"" SOURCES.txt # !"" dependency_links.txt # !"" requires.txt # %"" top_level.txt !"" README.md !"" LICENSE 2&11*UBSH[ͷத਎͸ӈͷͱ͓ΓͰ͢ɻ XIMϑΝΠϧ͸όΠφϦϑΝΠϧͱͳΓ·͢ɻ QJQJOTUBMM͞Εͨ࣌͸͜ͷόΠφϦϑΝΠϧ͕μ΢ϯ ϩʔυ͞ΕͯɺϩʔΧϧʹΠϯετʔϧ͞Ε·͢ɻ ͳͷͰɺNBYPT༻ɺMJOVY༻ͱ͍ͬͨ۩߹ʹ༷ʑͳ ϓϥοτϑΥʔϜͷόΠφϦ͕͋Δͱ൚༻ੑ͕૿͠·͢ ࣍͸ɺ͜ͷͭͷϑΝΠϧΛ1Z1*ʹVQMPBE͠·͢ʂ

Slide 32

Slide 32 text

0DUUI#JP1BDLBUIPO5BLBUTVHV,PTVHJ ݚڀࣨ঺հ ݚڀ঺հ 1Z1*ͷొ࿥·ͰͷಓͷΓ 1BDLBHF࡞੒ࣄલ४උ 1BDLBHFιʔεͷ࡞੒ 1BDLBHFͷϏϧυ 1Z1*΁ͷVQMPBE .BLFpMFʹΑΔλεΫઃఆ "HFOEB

Slide 33

Slide 33 text

0DUUI#JP1BDLBUIPO5BLBUTVHV,PTVHJ 1Z1*ͷొ࿥·ͰͷಓͷΓɿ1Z1*ͷϢʔβʔొ࿥ ૣ଎ొ࿥͍ͨ͠ͷͰ͕͢ɺ·͍ͣΘΏΔϢʔβʔొ࿥ͷඞཁ͕͋Γ·͢ɻ ͦͯ͠ɺ1Z1*ʹ͸ςετ༻ͷ؀ڥͱɺຊ൪༻ͷ؀ڥ͕͋Γ·͢ɻ ͜ͷ̎ͭ1Z1*ͷϢʔβʔొ࿥Λ͠·͠ΐ͏ɻ 5FTU1Z1*u5FTU1ZUIPO1BDLBHF*OEFY 1Z1*u1ZUIPO1BDLBHF*OEFY ςετ༻ ຊ൪༻

Slide 34

Slide 34 text

0DUUI#JP1BDLBUIPO5BLBUTVHV,PTVHJ 1Z1*ͷొ࿥·ͰͷಓͷΓɿ5FTU1Z1*΁ͷVQMPBE # TestPyPI΁ͷupload % twine upload --repository-url https://test.pypi.org/legacy/ dist/* Uploading distributions to https://test.pypi.org/legacy/ Uploading QEPPI-0.1.10-py3-none-any.whl 100%|█████████████████████████████| 12.1k/12.1k [00:01<00:00, 6.68kB/s] Uploading QEPPI-0.1.10.tar.gz 100%|█████████████████████████████| 11.9k/11.9k [00:02<00:00, 5.86kB/s] View at: https://test.pypi.org/project/QEPPI/0.1.10/ # ϑΝΠϧͷத਎Λมߋͯ͠ɺversion͕ಉͩ͡ͱҎԼͷΑ͏ʹͳΔ NOTE: Try --verbose to see response content. HTTPError: 400 Bad Request from https://test.pypi.org/ legacy/ File already exists. See https://test.pypi.org/help/ #file-name-reuse for more information. ஫ҙ 3&"%.&NEΛͦͷ··MPOHEFTDSJQUJPOʹઃఆ͍ͯ͠ Δ৔߹͸ɺຊ౰ʹࠓͷ3&"%.&NEͰྑ͍͔Λ͔ͬ͠Γ ݕ౼ͯ͠ɺ΍Γ͖͔ͬͯΒVQʹਐΜͩ΄͏͕ྑ͍Ͱ͢ɻ 5FTU1Z1*΋1Z1*΋VQMPBEͷ΍Γ௚͕͠Ͱ͖·ͤΜɻ WFSTJPOΛಉ͡··ͰɺEFTDSJQUJPO͚ͩม͍͑ͨͱ͍͏ ͜ͱ͕Ͱ͖ͳ͍ͷͰؾΛ͚ͭ·͠ΐ͏ɻ ࠶౓VQMPBE͢Δ৔߹͸WFSTJPOΛগ͠Ͱ΋͍͍͔Β্͛ ΔʢͳΒͱ͔ʣ࡟আͯ͠΋ಉ໊͡લͩͱه࿥ ͕࢒͍ͬͯΔͷͰɺ࡟আͯ͠΋μϝͰ͢ɻ

Slide 35

Slide 35 text

0DUUI#JP1BDLBUIPO5BLBUTVHV,PTVHJ 1Z1*ͷొ࿥·ͰͷಓͷΓɿ5FTU1Z1*΁ͷVQMPBE # TestPyPI΁ͷupload % twine upload --repository-url https://pypi.org/legacy/ dist/* Enter your username: Enter your password: Uploading distributions to https://test.pypi.org/legacy/ Uploading QEPPI-0.1.10-py3-none-any.whl 100%|█████████████████████████████| 12.1k/12.1k [00:01<00:00, 6.68kB/s] Uploading QEPPI-0.1.10.tar.gz 100%|█████████████████████████████| 11.9k/11.9k [00:02<00:00, 5.86kB/s] View at: https://test.pypi.org/project/QEPPI/0.1.10/ # TestPyPI͔Βpip install͢Δ % pip install -i https://test.pypi.org/simple/ QEPPI Collecting QEPPI Downloading QEPPI-0.1.10-py3-none-any.whl (6.7 kB) Collecting rdkit-pypi>=2021.3.1.5 Downloading rdkit_pypi-2021.3.5.1-cp38-cp38-macosx_10_9_x86_64.whl (16.1 MB) |████████████████████████████████| 16.1 MB 3.7 MB/s Collecting numpy>=1.19.5 Downloading numpy-1.21.2-cp38-cp38-macosx_10_9_x86_64.whl (16.9 MB) |████████████████████████████████| 16.9 MB 4.7 MB/s Collecting pandas>=1.1.5 Downloading pandas-1.3.3-cp38-cp38-macosx_10_9_x86_64.whl (11.4 MB) |████████████████████████████████| 11.4 MB 3.8 MB/s Requirement already satisfied: pytz>=2017.3 in /Users/lily/.pyenv/versions/3.8.2/envs/ test_QEPPI/lib/python3.8/site-packages (from pandas>=1.1.5->QEPPI) (2021.3) Requirement already satisfied: python-dateutil>=2.7.3 in /Users/lily/.pyenv/versions/3.8.2/ envs/test_QEPPI/lib/python3.8/site-packages (from pandas>=1.1.5->QEPPI) (2.8.2) Requirement already satisfied: six>=1.5 in /Users/lily/.pyenv/versions/3.8.2/envs/test_QEPPI/ lib/python3.8/site-packages (from python-dateutil>=2.7.3->pandas>=1.1.5->QEPPI) (1.16.0) Installing collected packages: numpy, rdkit-pypi, pandas, QEPPI Successfully installed QEPPI-0.1.10 numpy-1.21.2 pandas-1.3.3 rdkit-pypi-2021.3.5.1 UXJOFVQMPBESFQPTJUPSZVSMIUUQTUFTUQZQJPSHMFHBDZEJTU ͱ͢ΔͱɺVTFSOBNFͱQBTTΛٻΊΒΕΔͷͰೖྗ͠·͢ ςετ؀ڥ͍ͬͯ͏͚ͩͰɺݟͨ໨͸ຊ൪ͱ΄ͱΜͲมΘΓ ·ͤΜɻ1SPKFDUEFTDSJQUJPO͕ଥ౰͔࠶౓ݕ౼͠·͠ΐ ͏ɻ ӈͷΑ͏ʹQJQJOTUBMMͯ͠ڍಈ΋֬ೝ͠ɺඞཁʹԠͯ͡ςε τίʔυͳͲΛ૸ΒͤΔͱྑ͍Ͱ͠ΐ͏ɻ XIMϑΝΠϧ͕μ΢ϯϩʔυ͞Ε͍ͯΔ VTFSOBNFͱQBTTΛٻΊΒΕΔ IUUQTUFTUQZQJPSHQSPKFDU2&11*

Slide 36

Slide 36 text

0DUUI#JP1BDLBUIPO5BLBUTVHV,PTVHJ 1Z1*ͷొ࿥·ͰͷಓͷΓɿ1Z1*΁ͷVQMPBE # TestPyPI΁ͷupload % twine upload --repository-url https://pypi.org/legacy/ dist/* Enter your username: Enter your password: Uploading distributions to https://pypi.org/legacy/ Uploading QEPPI-0.1.10-py3-none-any.whl 100%|█████████████████████████████| 12.1k/12.1k [00:01<00:00, 6.68kB/s] Uploading QEPPI-0.1.10.tar.gz 100%|█████████████████████████████| 11.9k/11.9k [00:02<00:00, 5.86kB/s] View at: https://pypi.org/project/QEPPI/0.1.10/ # PyPI͔Βpip install͢Δ % pip install -i https://pypi.org/simple/ QEPPI Collecting QEPPI Downloading QEPPI-0.1.10-py3-none-any.whl (6.7 kB) Collecting rdkit-pypi>=2021.3.1.5 Downloading rdkit_pypi-2021.3.5.1-cp38-cp38-macosx_10_9_x86_64.whl (16.1 MB) |████████████████████████████████| 16.1 MB 3.7 MB/s Collecting numpy>=1.19.5 Downloading numpy-1.21.2-cp38-cp38-macosx_10_9_x86_64.whl (16.9 MB) |████████████████████████████████| 16.9 MB 4.7 MB/s Collecting pandas>=1.1.5 Downloading pandas-1.3.3-cp38-cp38-macosx_10_9_x86_64.whl (11.4 MB) |████████████████████████████████| 11.4 MB 3.8 MB/s Requirement already satisfied: pytz>=2017.3 in /Users/lily/.pyenv/versions/3.8.2/envs/ test_QEPPI/lib/python3.8/site-packages (from pandas>=1.1.5->QEPPI) (2021.3) Requirement already satisfied: python-dateutil>=2.7.3 in /Users/lily/.pyenv/versions/3.8.2/ envs/test_QEPPI/lib/python3.8/site-packages (from pandas>=1.1.5->QEPPI) (2.8.2) Requirement already satisfied: six>=1.5 in /Users/lily/.pyenv/versions/3.8.2/envs/test_QEPPI/ lib/python3.8/site-packages (from python-dateutil>=2.7.3->pandas>=1.1.5->QEPPI) (1.16.0) Installing collected packages: numpy, rdkit-pypi, pandas, QEPPI Successfully installed QEPPI-0.1.10 numpy-1.21.2 pandas-1.3.3 rdkit-pypi-2021.3.5.1 UXJOFVQMPBESFQPTJUPSZVSMIUUQTQZQJPSHMFHBDZEJTU VTFSOBNFͱQBTTΛٻΊΒΕΔͷͰೖྗ͠·͢ ӈͷΑ͏ʹQJQJOTUBMMͯ͠ڍಈ΋֬ೝ͠ɺඞཁʹԠͯ͡ ςετίʔυͳͲΛ૸ΒͤΔͱྑ͍Ͱ͠ΐ͏ɻ ͜ΕͰ1Z1*ͷొ࿥͸׬ྃͰ͢ɻ VTFSOBNFͱQBTTΛٻΊΒΕΔ XIMϑΝΠϧ͕μ΢ϯϩʔυ͞Ε͍ͯΔ IUUQTQZQJPSHQSPKFDU2&11* IUUQTQZQJPSHQSPKFDU2&11*

Slide 37

Slide 37 text

0DUUI#JP1BDLBUIPO5BLBUTVHV,PTVHJ ݚڀࣨ঺հ ݚڀ঺հ 1Z1*ͷొ࿥·ͰͷಓͷΓ 1BDLBHFU࡞੒ࣄલ४උ 1BDLBHFUιʔεͷ࡞੒ 1BDLBHFͷϏϧυ 1Z1*΁ͷVQMPBE .BLFpMFʹΑΔλεΫઃఆ "HFOEB

Slide 38

Slide 38 text

0DUUI#JP1BDLBUIPO5BLBUTVHV,PTVHJ .BLFGJMFʹΑΔλεΫઃఆɿQZQJSDͷ࡞੒ # ~/.pypirc [distutils] index-servers = pypi testpypi [pypi] username = __token__ password = pypi-~~~tokenΛೖΕΔ [testpypi] username = __token__ password = pypi-~~~tokenΛೖΕΔ ͜Ε͔ΒόʔδϣϯΛ্͍͛ͯ͘ͱ͖ʹศརͳ༷ʹ .BLFGJMFΛ࢖ͬͯɺλεΫԽͯ͠͠·͍·͠ΐ͏ɻ ͦͷલʹɺຖճύεΛೖΕΔͷ΋ηΩϡϦςΟతʹ΋ ͪΐͬͱඍົͳͷͱ໘౗ͳͷͰɺ"1*UPLFOΛ࢖ͬͯ ొ࿥ग़དྷΔΑ͏ʹ͠·͢ɻΞΧ΢ϯτઃఆͷԼͷํ͔Β औಘग़དྷΔͷͰͦΕͧΕऔಘͯ͠Լ͍͞ɻ "1*UPLFOΛऔಘͨ͠ΒӈͷΑ͏ʹdQZQJSDΛ࡞ͬͯ Լ͍͞ɻVTFSOBNFΛUPLFOͱ͢ΔͱQBTT͸"1*UPLFO ͱೝࣝ͢ΔΑ͏Ͱ͢ɻ ʢͪͳΈʹ͜͜ʹɺࣗ෼ͷVTFSOBNFͱQBTTΛॻ͍ͯ΋ ྑ͍Ͱ͕͢UPLFOͷ΄͏͕҆શͰ͢Ͷɻʣ ஫ҙɿ"1*UPLFO͸QZQJ΋ؚΊͯԼ͍͞ɻ

Slide 39

Slide 39 text

0DUUI#JP1BDLBUIPO5BLBUTVHV,PTVHJ .BLFGJMFʹΑΔλεΫઃఆɿ.BLFGJMFͷ࡞੒ # Makefile .DEFAULT_GOAL := help # all targets are phony .PHONY: $(shell egrep -o ^[a-zA-Z0-9_-]+: $(MAKEFILE_LIST) | sed 's/://') clean: ## Clean @echo 'Clean $@' rm -rf {Package_Name}.egg-info/* dist/* -y @echo 'Finished $@' build: ## Build @echo 'Build $@' python setup.py sdist bdist_wheel @echo 'Finished $@' test-deploy: ## Upload test PyPI @echo 'Upload test PyPI $@' twine upload -r testpypi dist/* @echo 'Finished $@' deploy: ## Upload PyPI @echo 'Upload PyPI $@' twine upload -r pypi dist/* @echo 'Finished $@' help: ## Print this help @echo 'Usage: make [target]' @echo '' @echo 'Targets:' @awk 'BEGIN {FS = ":.*?## "} /^[a-zA-Z_-]+:.*?## / {printf "\033[36m%-10s\033[0m %s\n", $$1, $$2}' $(MAKEFILE_LIST) ͜Ε·ͰͷίϚϯυΛ·ͱΊͨ.BLFGJMFʹͳΓ·͢ɻ NBLFDMFBO Ұ౓ɺ#VJME͢ΔͱFHH*OGPͱ͔EJTUͷલͷόʔδϣϯ ͕࢒ͬͨ··ʹͳͬͯ͠·͍·͢ɻ ͳͷͰɺDMFBOͰաڈͷύοέʔδΛফ͠·͢ɻ ୯७ʹSNSGͰফ͍ͯ͠Δ͚ͩͰ͢ɻ NBLFCVJME Ϗϧυͯ͠VQMPBE͢ΔͨΊͷEJTUͱXIMΛ࡞Γ·͢ɻ NBLFUFTUEFQMPZ 5FTU1Z1*ʹVQ͠·͢ɻ NBLFEFQMPZ 1Z1*ʹVQ͠·͢ɻ λεΫԽ͓ͯ͘͠ͱɺ͠͹Β͘ܦ͔ͬͯΒͷόʔδϣϯ ߋ৽ͷࡍʹ΋ɺهԱʹ༏࣮͘͠ߦͰ͖·͢ɻ

Slide 40

Slide 40 text

0DUUI#JP1BDLBUIPO5BLBUTVHV,PTVHJ ·ͱΊ w Խ߹෺ͷ11*ΛඪతʹͰ͖ͦ͏ͳ౓߹͍ΛఆྔతʹධՁ͢Δࢦඪ2&11*Λ։ൃ͠·ͨ͠ɻ 2VBOUJUBUJWF&TUJNBUF*OEFYGPS&BSMZ4UBHF4DSFFOJOHPG$PNQPVOET5BSHFUJOH1SPUFJO1SPUFJO*OUFSBDUJPOT w 1Z1*ͷొ࿥·ͰͷಓͷΓ w 1BDLBHF࡞੒ࣄલ४උ w TFUVQUPPMT XIFFM UXJOFͷΠϯετʔϧɻ w 1BDLBHFιʔεͷ࡞੒ w TFUVQQZΛؚΉɺܗࣜతͳϑΝΠϧߏ଄Ͱ࡞੒ɻTFUVQQZʹύοέʔδ࡞੒৘ใΛهड़ɻ w 1BDLBHFͷϏϧυ w TFUVQQZTEJTUCEJTU@XIFFMʹΑΔɺιʔε഑෍෺ͱόΠφϦ഑෍෺ͷ࡞੒ɻ w 1Z1*΁ͷVQMPBE w UXJOFΛ࢖ͬͨVQMPBEɻUFTU؀ڥͰςετ͔ͯ͠Βɺຊ൪؀ڥʹVQMPBEɻ w .BLFGJMFʹΑΔλεΫઃఆ w QZQJSDͷઃఆɻ.BLFGJMFͰλεΫԽ͓ͯ͘͜͠ͱͰϑϩʔΛཧղ͠΍ͨ͘͢͠ɻ ,PTVHJ 50IVF . 2VBOUJUBUJWF&TUJNBUF*OEFYGPS&BSMZ4UBHF4DSFFOJOHPG$PNQPVOET5BSHFUJOH1SPUFJO1SPUFJO*OUFSBDUJPOT *OU+.PM4DJ IUUQTEPJPSHJKNT IUUQTQZQJPSHQSPKFDU2&11*