Add description on the vendoring process we use - #22204

Merged
potiuk merged 1 commit into
apache:mainfrom
potiuk:add-description-of-vendoring-process
Mar 20, 2022
Merged

Add description on the vendoring process we use#22204
potiuk merged 1 commit into
apache:mainfrom
potiuk:add-description-of-vendoring-process

Conversation

@potiuk

Copy link
Copy Markdown
Member

We need to vendor in cgroupspy library in order to make Airflow
compatible with Python 3.10 (see #22050) so this is the right time
to make our vendoring process more organized.

I based in parts on the readme described by bleach package.


^ Add meaningful description above

Read the Pull Request Guidelines for more information.
In case of fundamental code change, Airflow Improvement Proposal (AIP) is needed.
In case of a new dependency, check compliance with the ASF 3rd Party License Policy.
In case of backwards incompatible changes please leave a note in UPDATING.md.

Comment threadairflow/_vendor/README.md Outdated
@uranusjr

Copy link
Copy Markdown
Member

Some ideas from how pip does this. pip fully automates the vendoring-patching process so a new version can be pulled immediately if needed. It uses vendoring for this. It takes a requirements file (a la requiurements.txt) and diff files for patches. When invoked, it downloads and extracts the package and applies the patches in the vendor directory (specified in pyproject.toml).

Not sure if Airflow needs this much infrastructure (we only vendor two? dependencies and don’t generally upgrade the existing one), but could be useful if we want to go this route.

Comment threadairflow/_vendor/README.md Outdated
@potiuk

potiuk commented Mar 13, 2022

Copy link
Copy Markdown
MemberAuthor

Not sure if Airflow needs this much infrastructure (we only vendor two? dependencies and don’t generally upgrade the existing one), but could be useful if we want to go this route.

Yeah. I considered it too, but let's say we might want to do it when we see if it is needed. For now we have 0 vendored-in dependencies and and the aim is to remove them asap - likely with next release (I am going to submit a PR to fix it in cgroupspy in a moment).

@potiuk

Copy link
Copy Markdown
MemberAuthor

The Fix to cgroupspy submitted: cloudsigma/cgroupspy#14 - but the last change was 7 months ago, so I am not sure how fast it might get merged/released.

@potiuk

Copy link
Copy Markdown
MemberAuthor

Yeah. I considered it too, but let's say we might want to do it when we see if it is needed. For now we have 0 vendored-in dependencies and and the aim is to remove them asap - likely with next release (I am going to submit a PR to fix it in cgroupspy in a moment).

I tihnk when we have more than one vendored in dependencies with significant changes and active development of the vendored-library (and when we see that such vendoring-in might be needed for at least few releases - we should consider automating it - in the case we have now with cgroupspy - I can't imagine they release new version without accepting the single abc import change, so I think any automation around it is a waste :)

@potiuk
potiukforce-pushed the add-description-of-vendoring-process branch from 335b4db to 2be7857CompareMarch 13, 2022 15:03
@potiuk

Copy link
Copy Markdown
MemberAuthor

First in-line to get finally Python 3.10 support :)

@potiuk
potiukforce-pushed the add-description-of-vendoring-process branch from 2be7857 to b7d4037CompareMarch 14, 2022 18:22
@potiuk

Copy link
Copy Markdown
MemberAuthor

Hey @kaxil I cherry-picked your process description fixes from #22209 and added more description on the "no-compile".

@potiukpotiuk closed this Mar 14, 2022
@potiukpotiuk reopened this Mar 14, 2022
@potiuk
potiukforce-pushed the add-description-of-vendoring-process branch from b7d4037 to 83741e3CompareMarch 14, 2022 21:40
@potiuk

Copy link
Copy Markdown
MemberAuthor

Hey @kaxil -> can we merge it ? I hope to start merging the series of PRs: #22204, #22206, #22207, #22208, #22209 leading to Python 3.10 compatibility on Monay (hopefully) when I releae all the provider packages.

@potiuk

Copy link
Copy Markdown
MemberAuthor

🙏

Comment threadairflow/_vendor/README.md Outdated
We need to vendor in cgroupspy library in order to make Airflow
compatible with Python 3.10 (see apache#22050) so this is the right time
to make our vendoring process more organized.
I based in parts on the readme described by `bleach` package.
@potiuk
potiukforce-pushed the add-description-of-vendoring-process branch from 83741e3 to 2ec4ddbCompareMarch 19, 2022 21:06
@potiuk

Copy link
Copy Markdown
MemberAuthor

I rebased on top of latest changes - I need those #22204, #22206, #22207, #22208, #22209 to complete Python 3.10 support

Looking for approvals on all of those (they are slal small)

@github-actionsgithub-actionsBot added the full tests needed We need to run full set of tests for this PR to merge label Mar 19, 2022
@github-actions

Copy link
Copy Markdown
Contributor

The PR most likely needs to run full matrix of tests because it modifies parts of the core of Airflow. However, committers might decide to merge it quickly and take the risk. If they don't merge it quickly - please rebase it to the latest main at your convenience, or amend the last commit of the PR, and push it with --force-with-lease.

@potiuk
potiuk merged commit 9372aab into apache:mainMar 20, 2022
@potiuk
potiuk deleted the add-description-of-vendoring-process branch March 20, 2022 09:54
@ephraimbuddyephraimbuddy added the changelog:skip Changes that should be skipped from the changelog (CI, tests, etc..) label Apr 8, 2022
@potiuk
potiuk restored the add-description-of-vendoring-process branch April 26, 2022 20:52
@potiuk
potiuk deleted the add-description-of-vendoring-process branch July 29, 2022 20:04
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

changelog:skipChanges that should be skipped from the changelog (CI, tests, etc..)full tests neededWe need to run full set of tests for this PR to merge

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants

@potiuk@uranusjr@mik-laj@ephraimbuddy
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

Add description on the vendoring process we use - #22204

Merged
potiuk merged 1 commit into
apache:mainfrom
potiuk:add-description-of-vendoring-process
Mar 20, 2022
Merged

Add description on the vendoring process we use#22204
potiuk merged 1 commit into
apache:mainfrom
potiuk:add-description-of-vendoring-process

Conversation

@potiuk

Copy link
Copy Markdown
Member

We need to vendor in cgroupspy library in order to make Airflow
compatible with Python 3.10 (see #22050) so this is the right time
to make our vendoring process more organized.

I based in parts on the readme described by bleach package.


^ Add meaningful description above

Read the Pull Request Guidelines for more information.
In case of fundamental code change, Airflow Improvement Proposal (AIP) is needed.
In case of a new dependency, check compliance with the ASF 3rd Party License Policy.
In case of backwards incompatible changes please leave a note in UPDATING.md.

Comment threadairflow/_vendor/README.md Outdated
@uranusjr

Copy link
Copy Markdown
Member

Some ideas from how pip does this. pip fully automates the vendoring-patching process so a new version can be pulled immediately if needed. It uses vendoring for this. It takes a requirements file (a la requiurements.txt) and diff files for patches. When invoked, it downloads and extracts the package and applies the patches in the vendor directory (specified in pyproject.toml).

Not sure if Airflow needs this much infrastructure (we only vendor two? dependencies and don’t generally upgrade the existing one), but could be useful if we want to go this route.

Comment threadairflow/_vendor/README.md Outdated
@potiuk

potiuk commented Mar 13, 2022

Copy link
Copy Markdown
MemberAuthor

Not sure if Airflow needs this much infrastructure (we only vendor two? dependencies and don’t generally upgrade the existing one), but could be useful if we want to go this route.

Yeah. I considered it too, but let's say we might want to do it when we see if it is needed. For now we have 0 vendored-in dependencies and and the aim is to remove them asap - likely with next release (I am going to submit a PR to fix it in cgroupspy in a moment).

@potiuk

Copy link
Copy Markdown
MemberAuthor

The Fix to cgroupspy submitted: cloudsigma/cgroupspy#14 - but the last change was 7 months ago, so I am not sure how fast it might get merged/released.

@potiuk

Copy link
Copy Markdown
MemberAuthor

Yeah. I considered it too, but let's say we might want to do it when we see if it is needed. For now we have 0 vendored-in dependencies and and the aim is to remove them asap - likely with next release (I am going to submit a PR to fix it in cgroupspy in a moment).

I tihnk when we have more than one vendored in dependencies with significant changes and active development of the vendored-library (and when we see that such vendoring-in might be needed for at least few releases - we should consider automating it - in the case we have now with cgroupspy - I can't imagine they release new version without accepting the single abc import change, so I think any automation around it is a waste :)

@potiuk
potiukforce-pushed the add-description-of-vendoring-process branch from 335b4db to 2be7857CompareMarch 13, 2022 15:03
@potiuk

Copy link
Copy Markdown
MemberAuthor

First in-line to get finally Python 3.10 support :)

@potiuk
potiukforce-pushed the add-description-of-vendoring-process branch from 2be7857 to b7d4037CompareMarch 14, 2022 18:22
@potiuk

Copy link
Copy Markdown
MemberAuthor

Hey @kaxil I cherry-picked your process description fixes from #22209 and added more description on the "no-compile".

@potiukpotiuk closed this Mar 14, 2022
@potiukpotiuk reopened this Mar 14, 2022
@potiuk
potiukforce-pushed the add-description-of-vendoring-process branch from b7d4037 to 83741e3CompareMarch 14, 2022 21:40
@potiuk

Copy link
Copy Markdown
MemberAuthor

Hey @kaxil -> can we merge it ? I hope to start merging the series of PRs: #22204, #22206, #22207, #22208, #22209 leading to Python 3.10 compatibility on Monay (hopefully) when I releae all the provider packages.

@potiuk

Copy link
Copy Markdown
MemberAuthor

🙏

Comment threadairflow/_vendor/README.md Outdated
We need to vendor in cgroupspy library in order to make Airflow
compatible with Python 3.10 (see apache#22050) so this is the right time
to make our vendoring process more organized.
I based in parts on the readme described by `bleach` package.
@potiuk
potiukforce-pushed the add-description-of-vendoring-process branch from 83741e3 to 2ec4ddbCompareMarch 19, 2022 21:06
@potiuk

Copy link
Copy Markdown
MemberAuthor

I rebased on top of latest changes - I need those #22204, #22206, #22207, #22208, #22209 to complete Python 3.10 support

Looking for approvals on all of those (they are slal small)

@github-actionsgithub-actionsBot added the full tests needed We need to run full set of tests for this PR to merge label Mar 19, 2022
@github-actions

Copy link
Copy Markdown
Contributor

The PR most likely needs to run full matrix of tests because it modifies parts of the core of Airflow. However, committers might decide to merge it quickly and take the risk. If they don't merge it quickly - please rebase it to the latest main at your convenience, or amend the last commit of the PR, and push it with --force-with-lease.

@potiuk
potiuk merged commit 9372aab into apache:mainMar 20, 2022
@potiuk
potiuk deleted the add-description-of-vendoring-process branch March 20, 2022 09:54
@ephraimbuddyephraimbuddy added the changelog:skip Changes that should be skipped from the changelog (CI, tests, etc..) label Apr 8, 2022
@potiuk
potiuk restored the add-description-of-vendoring-process branch April 26, 2022 20:52
@potiuk
potiuk deleted the add-description-of-vendoring-process branch July 29, 2022 20:04
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

changelog:skipChanges that should be skipped from the changelog (CI, tests, etc..)full tests neededWe need to run full set of tests for this PR to merge

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants

@potiuk@uranusjr@mik-laj@ephraimbuddy
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Add description on the vendoring process we use - #22204

Merged
potiuk merged 1 commit into
apache:mainfrom
potiuk:add-description-of-vendoring-process
Mar 20, 2022
Merged

Add description on the vendoring process we use#22204
potiuk merged 1 commit into
apache:mainfrom
potiuk:add-description-of-vendoring-process

Conversation

@potiuk

Copy link
Copy Markdown
Member

We need to vendor in cgroupspy library in order to make Airflow
compatible with Python 3.10 (see #22050) so this is the right time
to make our vendoring process more organized.

I based in parts on the readme described by bleach package.


^ Add meaningful description above

Read the Pull Request Guidelines for more information.
In case of fundamental code change, Airflow Improvement Proposal (AIP) is needed.
In case of a new dependency, check compliance with the ASF 3rd Party License Policy.
In case of backwards incompatible changes please leave a note in UPDATING.md.

Comment threadairflow/_vendor/README.md Outdated
@uranusjr

Copy link
Copy Markdown
Member

Some ideas from how pip does this. pip fully automates the vendoring-patching process so a new version can be pulled immediately if needed. It uses vendoring for this. It takes a requirements file (a la requiurements.txt) and diff files for patches. When invoked, it downloads and extracts the package and applies the patches in the vendor directory (specified in pyproject.toml).

Not sure if Airflow needs this much infrastructure (we only vendor two? dependencies and don’t generally upgrade the existing one), but could be useful if we want to go this route.

Comment threadairflow/_vendor/README.md Outdated
@potiuk

potiuk commented Mar 13, 2022

Copy link
Copy Markdown
MemberAuthor

Not sure if Airflow needs this much infrastructure (we only vendor two? dependencies and don’t generally upgrade the existing one), but could be useful if we want to go this route.

Yeah. I considered it too, but let's say we might want to do it when we see if it is needed. For now we have 0 vendored-in dependencies and and the aim is to remove them asap - likely with next release (I am going to submit a PR to fix it in cgroupspy in a moment).

@potiuk

Copy link
Copy Markdown
MemberAuthor

The Fix to cgroupspy submitted: cloudsigma/cgroupspy#14 - but the last change was 7 months ago, so I am not sure how fast it might get merged/released.

@potiuk

Copy link
Copy Markdown
MemberAuthor

Yeah. I considered it too, but let's say we might want to do it when we see if it is needed. For now we have 0 vendored-in dependencies and and the aim is to remove them asap - likely with next release (I am going to submit a PR to fix it in cgroupspy in a moment).

I tihnk when we have more than one vendored in dependencies with significant changes and active development of the vendored-library (and when we see that such vendoring-in might be needed for at least few releases - we should consider automating it - in the case we have now with cgroupspy - I can't imagine they release new version without accepting the single abc import change, so I think any automation around it is a waste :)

@potiuk
potiukforce-pushed the add-description-of-vendoring-process branch from 335b4db to 2be7857CompareMarch 13, 2022 15:03
@potiuk

Copy link
Copy Markdown
MemberAuthor

First in-line to get finally Python 3.10 support :)

@potiuk
potiukforce-pushed the add-description-of-vendoring-process branch from 2be7857 to b7d4037CompareMarch 14, 2022 18:22
@potiuk

Copy link
Copy Markdown
MemberAuthor

Hey @kaxil I cherry-picked your process description fixes from #22209 and added more description on the "no-compile".

@potiukpotiuk closed this Mar 14, 2022
@potiukpotiuk reopened this Mar 14, 2022
@potiuk
potiukforce-pushed the add-description-of-vendoring-process branch from b7d4037 to 83741e3CompareMarch 14, 2022 21:40
@potiuk

Copy link
Copy Markdown
MemberAuthor

Hey @kaxil -> can we merge it ? I hope to start merging the series of PRs: #22204, #22206, #22207, #22208, #22209 leading to Python 3.10 compatibility on Monay (hopefully) when I releae all the provider packages.

@potiuk

Copy link
Copy Markdown
MemberAuthor

🙏

Comment threadairflow/_vendor/README.md Outdated
We need to vendor in cgroupspy library in order to make Airflow
compatible with Python 3.10 (see apache#22050) so this is the right time
to make our vendoring process more organized.
I based in parts on the readme described by `bleach` package.
@potiuk
potiukforce-pushed the add-description-of-vendoring-process branch from 83741e3 to 2ec4ddbCompareMarch 19, 2022 21:06
@potiuk

Copy link
Copy Markdown
MemberAuthor

I rebased on top of latest changes - I need those #22204, #22206, #22207, #22208, #22209 to complete Python 3.10 support

Looking for approvals on all of those (they are slal small)

@github-actionsgithub-actionsBot added the full tests needed We need to run full set of tests for this PR to merge label Mar 19, 2022
@github-actions

Copy link
Copy Markdown
Contributor

The PR most likely needs to run full matrix of tests because it modifies parts of the core of Airflow. However, committers might decide to merge it quickly and take the risk. If they don't merge it quickly - please rebase it to the latest main at your convenience, or amend the last commit of the PR, and push it with --force-with-lease.

@potiuk
potiuk merged commit 9372aab into apache:mainMar 20, 2022
@potiuk
potiuk deleted the add-description-of-vendoring-process branch March 20, 2022 09:54
@ephraimbuddyephraimbuddy added the changelog:skip Changes that should be skipped from the changelog (CI, tests, etc..) label Apr 8, 2022
@potiuk
potiuk restored the add-description-of-vendoring-process branch April 26, 2022 20:52
@potiuk
potiuk deleted the add-description-of-vendoring-process branch July 29, 2022 20:04
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

changelog:skipChanges that should be skipped from the changelog (CI, tests, etc..)full tests neededWe need to run full set of tests for this PR to merge

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants

@potiuk@uranusjr@mik-laj@ephraimbuddy
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Add description on the vendoring process we use - #22204

Merged
potiuk merged 1 commit into
apache:mainfrom
potiuk:add-description-of-vendoring-process
Mar 20, 2022
Merged

Add description on the vendoring process we use#22204
potiuk merged 1 commit into
apache:mainfrom
potiuk:add-description-of-vendoring-process

Conversation

@potiuk

Copy link
Copy Markdown
Member

We need to vendor in cgroupspy library in order to make Airflow
compatible with Python 3.10 (see #22050) so this is the right time
to make our vendoring process more organized.

I based in parts on the readme described by bleach package.


^ Add meaningful description above

Read the Pull Request Guidelines for more information.
In case of fundamental code change, Airflow Improvement Proposal (AIP) is needed.
In case of a new dependency, check compliance with the ASF 3rd Party License Policy.
In case of backwards incompatible changes please leave a note in UPDATING.md.

Comment threadairflow/_vendor/README.md Outdated
@uranusjr

Copy link
Copy Markdown
Member

Some ideas from how pip does this. pip fully automates the vendoring-patching process so a new version can be pulled immediately if needed. It uses vendoring for this. It takes a requirements file (a la requiurements.txt) and diff files for patches. When invoked, it downloads and extracts the package and applies the patches in the vendor directory (specified in pyproject.toml).

Not sure if Airflow needs this much infrastructure (we only vendor two? dependencies and don’t generally upgrade the existing one), but could be useful if we want to go this route.

Comment threadairflow/_vendor/README.md Outdated
@potiuk

potiuk commented Mar 13, 2022

Copy link
Copy Markdown
MemberAuthor

Not sure if Airflow needs this much infrastructure (we only vendor two? dependencies and don’t generally upgrade the existing one), but could be useful if we want to go this route.

Yeah. I considered it too, but let's say we might want to do it when we see if it is needed. For now we have 0 vendored-in dependencies and and the aim is to remove them asap - likely with next release (I am going to submit a PR to fix it in cgroupspy in a moment).

@potiuk

Copy link
Copy Markdown
MemberAuthor

The Fix to cgroupspy submitted: cloudsigma/cgroupspy#14 - but the last change was 7 months ago, so I am not sure how fast it might get merged/released.

@potiuk

Copy link
Copy Markdown
MemberAuthor

Yeah. I considered it too, but let's say we might want to do it when we see if it is needed. For now we have 0 vendored-in dependencies and and the aim is to remove them asap - likely with next release (I am going to submit a PR to fix it in cgroupspy in a moment).

I tihnk when we have more than one vendored in dependencies with significant changes and active development of the vendored-library (and when we see that such vendoring-in might be needed for at least few releases - we should consider automating it - in the case we have now with cgroupspy - I can't imagine they release new version without accepting the single abc import change, so I think any automation around it is a waste :)

@potiuk
potiukforce-pushed the add-description-of-vendoring-process branch from 335b4db to 2be7857CompareMarch 13, 2022 15:03
@potiuk

Copy link
Copy Markdown
MemberAuthor

First in-line to get finally Python 3.10 support :)

@potiuk
potiukforce-pushed the add-description-of-vendoring-process branch from 2be7857 to b7d4037CompareMarch 14, 2022 18:22
@potiuk

Copy link
Copy Markdown
MemberAuthor

Hey @kaxil I cherry-picked your process description fixes from #22209 and added more description on the "no-compile".

@potiukpotiuk closed this Mar 14, 2022
@potiukpotiuk reopened this Mar 14, 2022
@potiuk
potiukforce-pushed the add-description-of-vendoring-process branch from b7d4037 to 83741e3CompareMarch 14, 2022 21:40
@potiuk

Copy link
Copy Markdown
MemberAuthor

Hey @kaxil -> can we merge it ? I hope to start merging the series of PRs: #22204, #22206, #22207, #22208, #22209 leading to Python 3.10 compatibility on Monay (hopefully) when I releae all the provider packages.

@potiuk

Copy link
Copy Markdown
MemberAuthor

🙏

Comment threadairflow/_vendor/README.md Outdated
We need to vendor in cgroupspy library in order to make Airflow
compatible with Python 3.10 (see apache#22050) so this is the right time
to make our vendoring process more organized.
I based in parts on the readme described by `bleach` package.
@potiuk
potiukforce-pushed the add-description-of-vendoring-process branch from 83741e3 to 2ec4ddbCompareMarch 19, 2022 21:06
@potiuk

Copy link
Copy Markdown
MemberAuthor

I rebased on top of latest changes - I need those #22204, #22206, #22207, #22208, #22209 to complete Python 3.10 support

Looking for approvals on all of those (they are slal small)

@github-actionsgithub-actionsBot added the full tests needed We need to run full set of tests for this PR to merge label Mar 19, 2022
@github-actions

Copy link
Copy Markdown
Contributor

The PR most likely needs to run full matrix of tests because it modifies parts of the core of Airflow. However, committers might decide to merge it quickly and take the risk. If they don't merge it quickly - please rebase it to the latest main at your convenience, or amend the last commit of the PR, and push it with --force-with-lease.

@potiuk
potiuk merged commit 9372aab into apache:mainMar 20, 2022
@potiuk
potiuk deleted the add-description-of-vendoring-process branch March 20, 2022 09:54
@ephraimbuddyephraimbuddy added the changelog:skip Changes that should be skipped from the changelog (CI, tests, etc..) label Apr 8, 2022
@potiuk
potiuk restored the add-description-of-vendoring-process branch April 26, 2022 20:52
@potiuk
potiuk deleted the add-description-of-vendoring-process branch July 29, 2022 20:04
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

changelog:skipChanges that should be skipped from the changelog (CI, tests, etc..)full tests neededWe need to run full set of tests for this PR to merge

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants

@potiuk@uranusjr@mik-laj@ephraimbuddy
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

Add description on the vendoring process we use - #22204

Merged
potiuk merged 1 commit into
apache:mainfrom
potiuk:add-description-of-vendoring-process
Mar 20, 2022
Merged

Add description on the vendoring process we use#22204
potiuk merged 1 commit into
apache:mainfrom
potiuk:add-description-of-vendoring-process

Conversation

@potiuk

Copy link
Copy Markdown
Member

We need to vendor in cgroupspy library in order to make Airflow
compatible with Python 3.10 (see #22050) so this is the right time
to make our vendoring process more organized.

I based in parts on the readme described by bleach package.


^ Add meaningful description above

Read the Pull Request Guidelines for more information.
In case of fundamental code change, Airflow Improvement Proposal (AIP) is needed.
In case of a new dependency, check compliance with the ASF 3rd Party License Policy.
In case of backwards incompatible changes please leave a note in UPDATING.md.

Comment threadairflow/_vendor/README.md Outdated
@uranusjr

Copy link
Copy Markdown
Member

Some ideas from how pip does this. pip fully automates the vendoring-patching process so a new version can be pulled immediately if needed. It uses vendoring for this. It takes a requirements file (a la requiurements.txt) and diff files for patches. When invoked, it downloads and extracts the package and applies the patches in the vendor directory (specified in pyproject.toml).

Not sure if Airflow needs this much infrastructure (we only vendor two? dependencies and don’t generally upgrade the existing one), but could be useful if we want to go this route.

Comment threadairflow/_vendor/README.md Outdated
@potiuk

potiuk commented Mar 13, 2022

Copy link
Copy Markdown
MemberAuthor

Not sure if Airflow needs this much infrastructure (we only vendor two? dependencies and don’t generally upgrade the existing one), but could be useful if we want to go this route.

Yeah. I considered it too, but let's say we might want to do it when we see if it is needed. For now we have 0 vendored-in dependencies and and the aim is to remove them asap - likely with next release (I am going to submit a PR to fix it in cgroupspy in a moment).

@potiuk

Copy link
Copy Markdown
MemberAuthor

The Fix to cgroupspy submitted: cloudsigma/cgroupspy#14 - but the last change was 7 months ago, so I am not sure how fast it might get merged/released.

@potiuk

Copy link
Copy Markdown
MemberAuthor

Yeah. I considered it too, but let's say we might want to do it when we see if it is needed. For now we have 0 vendored-in dependencies and and the aim is to remove them asap - likely with next release (I am going to submit a PR to fix it in cgroupspy in a moment).

I tihnk when we have more than one vendored in dependencies with significant changes and active development of the vendored-library (and when we see that such vendoring-in might be needed for at least few releases - we should consider automating it - in the case we have now with cgroupspy - I can't imagine they release new version without accepting the single abc import change, so I think any automation around it is a waste :)

@potiuk
potiukforce-pushed the add-description-of-vendoring-process branch from 335b4db to 2be7857CompareMarch 13, 2022 15:03
@potiuk

Copy link
Copy Markdown
MemberAuthor

First in-line to get finally Python 3.10 support :)

@potiuk
potiukforce-pushed the add-description-of-vendoring-process branch from 2be7857 to b7d4037CompareMarch 14, 2022 18:22
@potiuk

Copy link
Copy Markdown
MemberAuthor

Hey @kaxil I cherry-picked your process description fixes from #22209 and added more description on the "no-compile".

@potiukpotiuk closed this Mar 14, 2022
@potiukpotiuk reopened this Mar 14, 2022
@potiuk
potiukforce-pushed the add-description-of-vendoring-process branch from b7d4037 to 83741e3CompareMarch 14, 2022 21:40
@potiuk

Copy link
Copy Markdown
MemberAuthor

Hey @kaxil -> can we merge it ? I hope to start merging the series of PRs: #22204, #22206, #22207, #22208, #22209 leading to Python 3.10 compatibility on Monay (hopefully) when I releae all the provider packages.

@potiuk

Copy link
Copy Markdown
MemberAuthor

🙏

Comment threadairflow/_vendor/README.md Outdated
We need to vendor in cgroupspy library in order to make Airflow
compatible with Python 3.10 (see apache#22050) so this is the right time
to make our vendoring process more organized.
I based in parts on the readme described by `bleach` package.
@potiuk
potiukforce-pushed the add-description-of-vendoring-process branch from 83741e3 to 2ec4ddbCompareMarch 19, 2022 21:06
@potiuk

Copy link
Copy Markdown
MemberAuthor

I rebased on top of latest changes - I need those #22204, #22206, #22207, #22208, #22209 to complete Python 3.10 support

Looking for approvals on all of those (they are slal small)

@github-actionsgithub-actionsBot added the full tests needed We need to run full set of tests for this PR to merge label Mar 19, 2022
@github-actions

Copy link
Copy Markdown
Contributor

The PR most likely needs to run full matrix of tests because it modifies parts of the core of Airflow. However, committers might decide to merge it quickly and take the risk. If they don't merge it quickly - please rebase it to the latest main at your convenience, or amend the last commit of the PR, and push it with --force-with-lease.

@potiuk
potiuk merged commit 9372aab into apache:mainMar 20, 2022
@potiuk
potiuk deleted the add-description-of-vendoring-process branch March 20, 2022 09:54
@ephraimbuddyephraimbuddy added the changelog:skip Changes that should be skipped from the changelog (CI, tests, etc..) label Apr 8, 2022
@potiuk
potiuk restored the add-description-of-vendoring-process branch April 26, 2022 20:52
@potiuk
potiuk deleted the add-description-of-vendoring-process branch July 29, 2022 20:04
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

changelog:skipChanges that should be skipped from the changelog (CI, tests, etc..)full tests neededWe need to run full set of tests for this PR to merge

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants

@potiuk@uranusjr@mik-laj@ephraimbuddy
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Add description on the vendoring process we use - #22204

Merged
potiuk merged 1 commit into
apache:mainfrom
potiuk:add-description-of-vendoring-process
Mar 20, 2022
Merged

Add description on the vendoring process we use#22204
potiuk merged 1 commit into
apache:mainfrom
potiuk:add-description-of-vendoring-process

Conversation

@potiuk

Copy link
Copy Markdown
Member

We need to vendor in cgroupspy library in order to make Airflow
compatible with Python 3.10 (see #22050) so this is the right time
to make our vendoring process more organized.

I based in parts on the readme described by bleach package.


^ Add meaningful description above

Read the Pull Request Guidelines for more information.
In case of fundamental code change, Airflow Improvement Proposal (AIP) is needed.
In case of a new dependency, check compliance with the ASF 3rd Party License Policy.
In case of backwards incompatible changes please leave a note in UPDATING.md.

Comment threadairflow/_vendor/README.md Outdated
@uranusjr

Copy link
Copy Markdown
Member

Some ideas from how pip does this. pip fully automates the vendoring-patching process so a new version can be pulled immediately if needed. It uses vendoring for this. It takes a requirements file (a la requiurements.txt) and diff files for patches. When invoked, it downloads and extracts the package and applies the patches in the vendor directory (specified in pyproject.toml).

Not sure if Airflow needs this much infrastructure (we only vendor two? dependencies and don’t generally upgrade the existing one), but could be useful if we want to go this route.

Comment threadairflow/_vendor/README.md Outdated
@potiuk

potiuk commented Mar 13, 2022

Copy link
Copy Markdown
MemberAuthor

Not sure if Airflow needs this much infrastructure (we only vendor two? dependencies and don’t generally upgrade the existing one), but could be useful if we want to go this route.

Yeah. I considered it too, but let's say we might want to do it when we see if it is needed. For now we have 0 vendored-in dependencies and and the aim is to remove them asap - likely with next release (I am going to submit a PR to fix it in cgroupspy in a moment).

@potiuk

Copy link
Copy Markdown
MemberAuthor

The Fix to cgroupspy submitted: cloudsigma/cgroupspy#14 - but the last change was 7 months ago, so I am not sure how fast it might get merged/released.

@potiuk

Copy link
Copy Markdown
MemberAuthor

Yeah. I considered it too, but let's say we might want to do it when we see if it is needed. For now we have 0 vendored-in dependencies and and the aim is to remove them asap - likely with next release (I am going to submit a PR to fix it in cgroupspy in a moment).

I tihnk when we have more than one vendored in dependencies with significant changes and active development of the vendored-library (and when we see that such vendoring-in might be needed for at least few releases - we should consider automating it - in the case we have now with cgroupspy - I can't imagine they release new version without accepting the single abc import change, so I think any automation around it is a waste :)

@potiuk
potiukforce-pushed the add-description-of-vendoring-process branch from 335b4db to 2be7857CompareMarch 13, 2022 15:03
@potiuk

Copy link
Copy Markdown
MemberAuthor

First in-line to get finally Python 3.10 support :)

@potiuk
potiukforce-pushed the add-description-of-vendoring-process branch from 2be7857 to b7d4037CompareMarch 14, 2022 18:22
@potiuk

Copy link
Copy Markdown
MemberAuthor

Hey @kaxil I cherry-picked your process description fixes from #22209 and added more description on the "no-compile".

@potiukpotiuk closed this Mar 14, 2022
@potiukpotiuk reopened this Mar 14, 2022
@potiuk
potiukforce-pushed the add-description-of-vendoring-process branch from b7d4037 to 83741e3CompareMarch 14, 2022 21:40
@potiuk

Copy link
Copy Markdown
MemberAuthor

Hey @kaxil -> can we merge it ? I hope to start merging the series of PRs: #22204, #22206, #22207, #22208, #22209 leading to Python 3.10 compatibility on Monay (hopefully) when I releae all the provider packages.

@potiuk

Copy link
Copy Markdown
MemberAuthor

🙏

Comment threadairflow/_vendor/README.md Outdated
We need to vendor in cgroupspy library in order to make Airflow
compatible with Python 3.10 (see apache#22050) so this is the right time
to make our vendoring process more organized.
I based in parts on the readme described by `bleach` package.
@potiuk
potiukforce-pushed the add-description-of-vendoring-process branch from 83741e3 to 2ec4ddbCompareMarch 19, 2022 21:06
@potiuk

Copy link
Copy Markdown
MemberAuthor

I rebased on top of latest changes - I need those #22204, #22206, #22207, #22208, #22209 to complete Python 3.10 support

Looking for approvals on all of those (they are slal small)

@github-actionsgithub-actionsBot added the full tests needed We need to run full set of tests for this PR to merge label Mar 19, 2022
@github-actions

Copy link
Copy Markdown
Contributor

The PR most likely needs to run full matrix of tests because it modifies parts of the core of Airflow. However, committers might decide to merge it quickly and take the risk. If they don't merge it quickly - please rebase it to the latest main at your convenience, or amend the last commit of the PR, and push it with --force-with-lease.

@potiuk
potiuk merged commit 9372aab into apache:mainMar 20, 2022
@potiuk
potiuk deleted the add-description-of-vendoring-process branch March 20, 2022 09:54
@ephraimbuddyephraimbuddy added the changelog:skip Changes that should be skipped from the changelog (CI, tests, etc..) label Apr 8, 2022
@potiuk
potiuk restored the add-description-of-vendoring-process branch April 26, 2022 20:52
@potiuk
potiuk deleted the add-description-of-vendoring-process branch July 29, 2022 20:04
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

changelog:skipChanges that should be skipped from the changelog (CI, tests, etc..)full tests neededWe need to run full set of tests for this PR to merge

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants

@potiuk@uranusjr@mik-laj@ephraimbuddy
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Add description on the vendoring process we use - #22204

Merged
potiuk merged 1 commit into
apache:mainfrom
potiuk:add-description-of-vendoring-process
Mar 20, 2022
Merged

Add description on the vendoring process we use#22204
potiuk merged 1 commit into
apache:mainfrom
potiuk:add-description-of-vendoring-process

Conversation

@potiuk

Copy link
Copy Markdown
Member

We need to vendor in cgroupspy library in order to make Airflow
compatible with Python 3.10 (see #22050) so this is the right time
to make our vendoring process more organized.

I based in parts on the readme described by bleach package.


^ Add meaningful description above

Read the Pull Request Guidelines for more information.
In case of fundamental code change, Airflow Improvement Proposal (AIP) is needed.
In case of a new dependency, check compliance with the ASF 3rd Party License Policy.
In case of backwards incompatible changes please leave a note in UPDATING.md.

Comment threadairflow/_vendor/README.md Outdated
@uranusjr

Copy link
Copy Markdown
Member

Some ideas from how pip does this. pip fully automates the vendoring-patching process so a new version can be pulled immediately if needed. It uses vendoring for this. It takes a requirements file (a la requiurements.txt) and diff files for patches. When invoked, it downloads and extracts the package and applies the patches in the vendor directory (specified in pyproject.toml).

Not sure if Airflow needs this much infrastructure (we only vendor two? dependencies and don’t generally upgrade the existing one), but could be useful if we want to go this route.

Comment threadairflow/_vendor/README.md Outdated
@potiuk

potiuk commented Mar 13, 2022

Copy link
Copy Markdown
MemberAuthor

Not sure if Airflow needs this much infrastructure (we only vendor two? dependencies and don’t generally upgrade the existing one), but could be useful if we want to go this route.

Yeah. I considered it too, but let's say we might want to do it when we see if it is needed. For now we have 0 vendored-in dependencies and and the aim is to remove them asap - likely with next release (I am going to submit a PR to fix it in cgroupspy in a moment).

@potiuk

Copy link
Copy Markdown
MemberAuthor

The Fix to cgroupspy submitted: cloudsigma/cgroupspy#14 - but the last change was 7 months ago, so I am not sure how fast it might get merged/released.

@potiuk

Copy link
Copy Markdown
MemberAuthor

Yeah. I considered it too, but let's say we might want to do it when we see if it is needed. For now we have 0 vendored-in dependencies and and the aim is to remove them asap - likely with next release (I am going to submit a PR to fix it in cgroupspy in a moment).

I tihnk when we have more than one vendored in dependencies with significant changes and active development of the vendored-library (and when we see that such vendoring-in might be needed for at least few releases - we should consider automating it - in the case we have now with cgroupspy - I can't imagine they release new version without accepting the single abc import change, so I think any automation around it is a waste :)

@potiuk
potiukforce-pushed the add-description-of-vendoring-process branch from 335b4db to 2be7857CompareMarch 13, 2022 15:03
@potiuk

Copy link
Copy Markdown
MemberAuthor

First in-line to get finally Python 3.10 support :)

@potiuk
potiukforce-pushed the add-description-of-vendoring-process branch from 2be7857 to b7d4037CompareMarch 14, 2022 18:22
@potiuk

Copy link
Copy Markdown
MemberAuthor

Hey @kaxil I cherry-picked your process description fixes from #22209 and added more description on the "no-compile".

@potiukpotiuk closed this Mar 14, 2022
@potiukpotiuk reopened this Mar 14, 2022
@potiuk
potiukforce-pushed the add-description-of-vendoring-process branch from b7d4037 to 83741e3CompareMarch 14, 2022 21:40
@potiuk

Copy link
Copy Markdown
MemberAuthor

Hey @kaxil -> can we merge it ? I hope to start merging the series of PRs: #22204, #22206, #22207, #22208, #22209 leading to Python 3.10 compatibility on Monay (hopefully) when I releae all the provider packages.

@potiuk

Copy link
Copy Markdown
MemberAuthor

🙏

Comment threadairflow/_vendor/README.md Outdated
We need to vendor in cgroupspy library in order to make Airflow
compatible with Python 3.10 (see apache#22050) so this is the right time
to make our vendoring process more organized.
I based in parts on the readme described by `bleach` package.
@potiuk
potiukforce-pushed the add-description-of-vendoring-process branch from 83741e3 to 2ec4ddbCompareMarch 19, 2022 21:06
@potiuk

Copy link
Copy Markdown
MemberAuthor

I rebased on top of latest changes - I need those #22204, #22206, #22207, #22208, #22209 to complete Python 3.10 support

Looking for approvals on all of those (they are slal small)

@github-actionsgithub-actionsBot added the full tests needed We need to run full set of tests for this PR to merge label Mar 19, 2022
@github-actions

Copy link
Copy Markdown
Contributor

The PR most likely needs to run full matrix of tests because it modifies parts of the core of Airflow. However, committers might decide to merge it quickly and take the risk. If they don't merge it quickly - please rebase it to the latest main at your convenience, or amend the last commit of the PR, and push it with --force-with-lease.

@potiuk
potiuk merged commit 9372aab into apache:mainMar 20, 2022
@potiuk
potiuk deleted the add-description-of-vendoring-process branch March 20, 2022 09:54
@ephraimbuddyephraimbuddy added the changelog:skip Changes that should be skipped from the changelog (CI, tests, etc..) label Apr 8, 2022
@potiuk
potiuk restored the add-description-of-vendoring-process branch April 26, 2022 20:52
@potiuk
potiuk deleted the add-description-of-vendoring-process branch July 29, 2022 20:04
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

changelog:skipChanges that should be skipped from the changelog (CI, tests, etc..)full tests neededWe need to run full set of tests for this PR to merge

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants

@potiuk@uranusjr@mik-laj@ephraimbuddy
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

Add description on the vendoring process we use - #22204

Merged
potiuk merged 1 commit into
apache:mainfrom
potiuk:add-description-of-vendoring-process
Mar 20, 2022
Merged

Add description on the vendoring process we use#22204
potiuk merged 1 commit into
apache:mainfrom
potiuk:add-description-of-vendoring-process

Conversation

@potiuk

Copy link
Copy Markdown
Member

We need to vendor in cgroupspy library in order to make Airflow
compatible with Python 3.10 (see #22050) so this is the right time
to make our vendoring process more organized.

I based in parts on the readme described by bleach package.


^ Add meaningful description above

Read the Pull Request Guidelines for more information.
In case of fundamental code change, Airflow Improvement Proposal (AIP) is needed.
In case of a new dependency, check compliance with the ASF 3rd Party License Policy.
In case of backwards incompatible changes please leave a note in UPDATING.md.

Comment threadairflow/_vendor/README.md Outdated
@uranusjr

Copy link
Copy Markdown
Member

Some ideas from how pip does this. pip fully automates the vendoring-patching process so a new version can be pulled immediately if needed. It uses vendoring for this. It takes a requirements file (a la requiurements.txt) and diff files for patches. When invoked, it downloads and extracts the package and applies the patches in the vendor directory (specified in pyproject.toml).

Not sure if Airflow needs this much infrastructure (we only vendor two? dependencies and don’t generally upgrade the existing one), but could be useful if we want to go this route.

Comment threadairflow/_vendor/README.md Outdated
@potiuk

potiuk commented Mar 13, 2022

Copy link
Copy Markdown
MemberAuthor

Not sure if Airflow needs this much infrastructure (we only vendor two? dependencies and don’t generally upgrade the existing one), but could be useful if we want to go this route.

Yeah. I considered it too, but let's say we might want to do it when we see if it is needed. For now we have 0 vendored-in dependencies and and the aim is to remove them asap - likely with next release (I am going to submit a PR to fix it in cgroupspy in a moment).

@potiuk

Copy link
Copy Markdown
MemberAuthor

The Fix to cgroupspy submitted: cloudsigma/cgroupspy#14 - but the last change was 7 months ago, so I am not sure how fast it might get merged/released.

@potiuk

Copy link
Copy Markdown
MemberAuthor

Yeah. I considered it too, but let's say we might want to do it when we see if it is needed. For now we have 0 vendored-in dependencies and and the aim is to remove them asap - likely with next release (I am going to submit a PR to fix it in cgroupspy in a moment).

I tihnk when we have more than one vendored in dependencies with significant changes and active development of the vendored-library (and when we see that such vendoring-in might be needed for at least few releases - we should consider automating it - in the case we have now with cgroupspy - I can't imagine they release new version without accepting the single abc import change, so I think any automation around it is a waste :)

@potiuk
potiukforce-pushed the add-description-of-vendoring-process branch from 335b4db to 2be7857CompareMarch 13, 2022 15:03
@potiuk

Copy link
Copy Markdown
MemberAuthor

First in-line to get finally Python 3.10 support :)

@potiuk
potiukforce-pushed the add-description-of-vendoring-process branch from 2be7857 to b7d4037CompareMarch 14, 2022 18:22
@potiuk

Copy link
Copy Markdown
MemberAuthor

Hey @kaxil I cherry-picked your process description fixes from #22209 and added more description on the "no-compile".

@potiukpotiuk closed this Mar 14, 2022
@potiukpotiuk reopened this Mar 14, 2022
@potiuk
potiukforce-pushed the add-description-of-vendoring-process branch from b7d4037 to 83741e3CompareMarch 14, 2022 21:40
@potiuk

Copy link
Copy Markdown
MemberAuthor

Hey @kaxil -> can we merge it ? I hope to start merging the series of PRs: #22204, #22206, #22207, #22208, #22209 leading to Python 3.10 compatibility on Monay (hopefully) when I releae all the provider packages.

@potiuk

Copy link
Copy Markdown
MemberAuthor

🙏

Comment threadairflow/_vendor/README.md Outdated
We need to vendor in cgroupspy library in order to make Airflow
compatible with Python 3.10 (see apache#22050) so this is the right time
to make our vendoring process more organized.
I based in parts on the readme described by `bleach` package.
@potiuk
potiukforce-pushed the add-description-of-vendoring-process branch from 83741e3 to 2ec4ddbCompareMarch 19, 2022 21:06
@potiuk

Copy link
Copy Markdown
MemberAuthor

I rebased on top of latest changes - I need those #22204, #22206, #22207, #22208, #22209 to complete Python 3.10 support

Looking for approvals on all of those (they are slal small)

@github-actionsgithub-actionsBot added the full tests needed We need to run full set of tests for this PR to merge label Mar 19, 2022
@github-actions

Copy link
Copy Markdown
Contributor

The PR most likely needs to run full matrix of tests because it modifies parts of the core of Airflow. However, committers might decide to merge it quickly and take the risk. If they don't merge it quickly - please rebase it to the latest main at your convenience, or amend the last commit of the PR, and push it with --force-with-lease.

@potiuk
potiuk merged commit 9372aab into apache:mainMar 20, 2022
@potiuk
potiuk deleted the add-description-of-vendoring-process branch March 20, 2022 09:54
@ephraimbuddyephraimbuddy added the changelog:skip Changes that should be skipped from the changelog (CI, tests, etc..) label Apr 8, 2022
@potiuk
potiuk restored the add-description-of-vendoring-process branch April 26, 2022 20:52
@potiuk
potiuk deleted the add-description-of-vendoring-process branch July 29, 2022 20:04
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

changelog:skipChanges that should be skipped from the changelog (CI, tests, etc..)full tests neededWe need to run full set of tests for this PR to merge

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants

@potiuk@uranusjr@mik-laj@ephraimbuddy