def updateAPI(self): req = "update API of the website? (requires {})".format(SPHINXBUILD) if User.yesNo(req, defaultToYes=True) is False: return False try: if check_call(shlex.split("{} --version".format(SPHINXBUILD))) != 0: raise RuntimeError("{} not found".format(SPHINXBUILD)) except: print(""" Oops! you don't have {} installed?" Cannot update the webite documentation..." You should install it and manually run:" $ cd {}" $ make websitedoc" Then, commit and push changes of the website.""".format(SPHINXBUILD, DOCSDIR)) User.pause() return False Git.chdirToRepositoryTopLevel() if not goTo('website'): User.pause() return False if not Git.isClean: print("There is WIP in the website repository: stashing") Git.stash('WIP during offlineimap API import') goTo('..') return True
def updateChangelog(self): if self.changelog.isPrevious(): self.changelog.showPrevious() if User.yesNo("A previous Changelog excerpt was found. Use it?"): self.changelog.usePrevious() if not self.changelog.usingPrevious(): date = datetime.now().strftime('%Y-%m-%d') testersList = "" testers = self.testers.getListOk() authorsList = "" authors = Git.getAuthorsList(currentVersion) for tester in testers: testersList += "- {}\n".format(tester.getName()) for author in authors: authorsList += "- {} ({})\n".format( author.getName(), author.getCount() ) commitsList = Git.getCommitsList(currentVersion) date = datetime.now().strftime('%Y-%m-%d') self.changelog.writeExcerpt( newVersion, date, testersList, authorsList, commitsList ) self.changelog.edit() self.changelog.update()
def updateUploads(self): req = ("add new archive to uploads/ on the website? " "(warning: checksums will change if it already exists)") if User.yesNo(req, defaultToYes=True) is False: return False if check_call(shlex.split("./docs/build-uploads.sh")) != 0: return exit(5) return True