April 8, 2020Log Rotation for Python Applications - Without killing them softlyA couple of days after a successful deployment of my Zope 4 application, I noticed something worrisome. Zope gets killed every night, shortly after midnight. I use Supervisor, which monitors the process and restarts it, so that’s not the problem. But there are two problems: I did not trigger this on purpose. The cache of my app is cold, that means that my colleagues get slow response times for the first queries in the morning....
February 23, 2020isort and pre-commit - a friendship with obstaclesNote This post is not intended to be an exhaustive introduction to pre-commit and its hooks. Please visit pre-commit.com for a complete documentation. In a nutshell… pre-commit From its website: A framework for managing and maintaining multi-language pre-commit hooks. Very simplified this means, whenever you try to commit changes in your project (e.g. entering git commit), pre-commit runs all configured tools (e.g. linter, formatter, …), and only if they run successfully, your commit will be executed - otherwise your commit will fail....
November 26, 2019Three Ways to Get Into Trouble or Welcome Back PageTemplateEngineThe web application server Zope has a very long history which dates back to the late ’90s. Quoting Martijn Faassen: Zope must be one of the oldest Python codebases in the world that is still used outside the standard library. During its many years of existence the way a view gets rendered has changed. Basically there are two supported template mechanisms: Document Template Markup Language (DTML) Zope Page Templates (ZPT) DTML is pretty much outdated for more than a decade, but still in use for the Zope Management Interface....
May 29, 2019Am I FamousA couple of months ago, Brett Cannon, one of the better known Python core developers, announced on Twitter that he contributed to over 100 open source projects. first reaction Woohah! Congratulations! second reaction How did he know? Every time I get a PR merged I record the repo’s URL for a tool I created to analyze my contributions to OSS. Ah… k. I did not do that. third reaction To how many open source projects did I contribute?...
May 27, 2019PyConWeb 2019: Came for the talks, stayed for the rafflessummary of pyconweb 2019 F… awesome! talks and workshops I tried to collect all slides from Twitter and Telegram - in case I missed some, please drop me a line @jugmac00. Saturday, 25 May 2019 Building robust APIs Tornado Web Services on AsyncIO Bocadillo, or how I built an open source async web framework slides@Dropbox | slides@Github Introduction to GraphQL and Graphene source Hello to the World in 8 Web Frameworks slides and video @aaronbassett Life without passwords The dos and don’ts of task queues An introduction to D3....
May 10, 2019Chrome No Longer Shows Saved PasswordsConcerning security and privacy, you either can get stalled because you can’t get it perfect right from the beginning, or you improve over time. I prefer the latter one. And concerning password security I go with Troy Hunt: Password managers don’t have to be perfect, they just have to be better than not having one. And actually the password manager of a browser is already a password manager. I would not use it for very important passwords, but it is absolutely fine for those dozens of dozens forum logins and so on....
May 10, 2019Recap Day Three and Wrap Up of Zope Spring CleaningThis blog post is work in progress… much more to come - but the train is only 10 minutes late (uncommon in Germany :-) ), so I am not able finish the blog post now (narrator: he never has updated and never will update this blog post). tl/dr - what a ride! today there was the final release of Zope 4! see blog post @gocept Michael / @gocept announced the roadmap for Zope 2....
May 10, 2019Recap Day Two of Zope Spring CleaningVery brief recap, as I want to spend the remaining time with some more documentation updates. progress Jens Hinghaus Fix bug in ZMI search improve tempstorage fix Steffen finished the documentation for the Nonsensical path issue had some fun with getting AppVeyor up and running for Zope Daniel fixed a bug in ZCatalog (sorting did not work); migrated a DTML template to zpt Jeremy continued his work on zc.recipe.testrunner Jens Klein with Martin released zodbupdate released zodbverify opened a pull request for the ZODB migration story Michael prepared a blog post for the Zope roadmap prepared a blog post for the final release of Zope 4 released some more packages is about preparing the final release of Zope 4!...
May 9, 2019Recap day one of "Zope spring cleaning"More infos about the sprint 10 local sprinters 2 remote sprinters (Jens Vagelpohl and Dieter Maurer) progress Steffen had lots of fun with Nonsensical Path Infos had a look at some of the open documentation tickets Jens Klein / Martin Häcker created a pull request to improve the zodpupdate script created / extracted plone/zodbverify which can be used to check ZODB before the Python 2 -> 3 migration Jeremy worked on porting recipe....
May 3, 2019Face to face with "Earl Zope and his henchmen"This blog post tries to ease beginning and keeping up with the development of the open source web application server Zope and its universe. what makes it hard to start contributing Zope is a very mature product, as it was launched already back in 1999 Zope underwent some major architectural changes (keyword ZCA) Zope itself is relatively complex there is also a complex development ecosystem around it Buildout TravisCI (as of 2021, Travis is no longer used, but GHA) GitHub....