AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |
Back to Blog
Airflow 2.0 plugins8/3/2023 ![]() It was actually a blessing in disguise for us. “Everything shut down there as well, so we couldn’t get back. You couldn’t get back to the UK at that time? I was actually supposed to go for two weeks, but it ended up being two months because of lockdown.” I just booked a flight and left the next day to go to Pakistan. Suddenly, I wasn’t even thinking about the burglary anymore. Basically the day after the burglary, I was in my studio with a forensic police officer taking fingerprints, and then my grandma FaceTimed me crying as my granddad, who’s my favourite person in the world, had a brain haemorrhage in Pakistan. How long did it take you to get back into the swing of work after losing that album? And the music’s really different this time around. But now looking back on it, because I started again from scratch: yeah, completely. At the time everyone was like ‘maybe it happened for a reason’. Anyone who’s lost any work, whether it’s an essay, or music, or photos, or whatever, they know the feeling. I definitely learned the hard way about backing up! That was quite intense.” It feels like there was a lot of obstacles, to be honest, but one of the biggest was definitely the studio burglary. “Yeah, it’s been quite a long time between the last album and this one. You’ve faced a few challenges in creating this follow-up to your debut album… Watch the videos below to hear Iqbal talk us through about the album’s troubled gestation and illuminate her creative process. We met up with Iqbal in her London studio to find out more about Dreamer. ![]() The album – a second attempt at the follow-up record – sees Iqbal leaning further into her varied influences as well as exploring a widened mix of instrumentation, including sitars and a harmonium purchased on an extended stay in Pakistan. She also host a regular radio show on NTS as well as regularly appearing on stations including 6Music, Radio 1 and Asian Network.Īs a musician, Iqbal’s creative skills cover production, synthesis, guitar playing and her own vocals, all of which have played a role in the creation of her long awaited second LP, Dreamer. Between albums she has collaborated with renowned photographer Wolfgang Tillmans and Chinese artist Zhang Ding, as well as being commissioned to create music for the Turner prize. Nabihah Iqbal is a woman of many talents and a prolific work-rate. Once that has been done I believe macros provided through plugins are functional again.However, for her 2017 debut, Weighing Of The Heart, Iqbal ditched that alias in order to create a more personal record that leaned more towards the influence of ’80s post-punk as well as her own Pakistani heritage. I believe this issue could be solved by ensuring that integrate_macros_plugins sets a reference to the _utils as jw_utils on the airflow.macros module. The result of this is that the macros from the plugin will in fact be imported, but because airflow.macros symbol table itself is not being updated, the macros that are being added by the plugins can not be used in the template rendering context. However, in contrast to the old 1.10.x implementation, this function does not update the symbol table of airflow.macros. When Airflow attempts to prepare a template context, prior to running a task, it properly imports this function and invokes it in taskinstance.py. In order to load macros (or ensure that macros have been loaded), modules need to import the integrate_macros_plugins function from ugins_manager. they will be loaded on-demand whenever a function needs them. Instead they are being loaded lazily, i.e. This is in contrast to Airflow 2.0, where plugins are no longer loaded automatically. Notably, after the plugin's module has been initialized it will also automatically be registered on the airflow.macros module by updating the dictionary returned by globals(). When this happens it automatically initializes plugin-macro modules in the airflow.macros namespace. While doing this I observed that the plugin loading mechanism in Airflow 1.10.x works because Airflow automatically discovers all plugins through the plugins_manager module. After this observation I started comparing the logic for registering macros in Airflow 1.10.x to the Airflow 2.0.0 implementation. I thought it was strange for the test-case to fail on this module, given that the import_module() statement succeeded in Airflow 2.0. This statement tests whether the macros that we create through the JwUtilsPlugin have been properly added to airflow.macros. Specifically it fails on the assert hasattr(macros, 'jw_utils') statement in Airflow 2.0. This test case passes when being ran on Airflow 1.10, but surprisngly enough it fails on Airflow 2.x. # However, in order for the module to actually be allowed to be used in templates, it must also exist on # airflow.macros. ![]() # Verify that macros have been registered correctly.
0 Comments
Read More
Leave a Reply. |