Skip to content

Commit

Permalink
fix: another uv attempt
Browse files Browse the repository at this point in the history
  • Loading branch information
Jeff Gordon committed Oct 2, 2024
1 parent 6e1f7b9 commit 58aee03
Show file tree
Hide file tree
Showing 5 changed files with 14 additions and 35 deletions.
41 changes: 10 additions & 31 deletions lib/uv.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
const fse = require('fs-extra');
const path = require('path');
const spawn = require('child-process-ext/spawn');
const { EOL } = require('os');
const semver = require('semver');

async function getUvVersion() {
Expand Down Expand Up @@ -62,43 +61,23 @@ async function uvToRequirements() {
this.serverless.cli.log('Generating requirements.txt from uv.lock...');
}

let res;

try {
await getUvVersion();
res = await spawn('uv', ['export', '--no-dev', '--frozen', '--no-hashes'], {
cwd: this.servicePath,
});

fse.ensureDirSync(path.join(this.servicePath, '.serverless'));
fse.writeFileSync(
path.join(this.servicePath, '.serverless/requirements.txt'),
removeEditableFlagFromRequirementsString(res.stdoutBuffer)
const requirementsPath = path.join(
this.servicePath,
'.serverless/requirements.txt'
);
await spawn(
'uv',
['export', '--no-dev', '--frozen', '--no-hashes', '-o', requirementsPath],
{
cwd: this.servicePath,
}
);
} finally {
generateRequirementsProgress && generateRequirementsProgress.remove();
}
}

/**
*
* @param requirementBuffer
* @returns Buffer with editable flags remove
*/
function removeEditableFlagFromRequirementsString(requirementBuffer) {
const flagStr = '-e ';
const commentLine = '#';
const lines = requirementBuffer.toString('utf8').split(EOL);
let updatedLines = [];
for (let i = 0; i < lines.length; i++) {
if (lines[i].startsWith(flagStr)) {
updatedLines.push(lines[i].substring(flagStr.length));
}
if (!lines[i].startsWith(commentLine)) {
updatedLines.push(lines[i]);
}
}
return Buffer.from(updatedLines.join(EOL));
}

module.exports = { uvToRequirements };
2 changes: 1 addition & 1 deletion tests/individually/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,6 @@
"author": "",
"license": "ISC",
"dependencies": {
"serverless-python-requirements": "file:serverless-python-requirements-6.0.1.tgz"
"serverless-python-requirements": "file:serverless-python-requirements-6.1.1.tgz"
}
}
2 changes: 1 addition & 1 deletion tests/individually_mixed_runtime/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,6 @@
"author": "",
"license": "ISC",
"dependencies": {
"serverless-python-requirements": "file:serverless-python-requirements-6.0.1.tgz"
"serverless-python-requirements": "file:serverless-python-requirements-6.1.1.tgz"
}
}
2 changes: 1 addition & 1 deletion tests/poetry_individually/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,6 @@
"author": "",
"license": "ISC",
"dependencies": {
"serverless-python-requirements": "file:serverless-python-requirements-6.0.1.tgz"
"serverless-python-requirements": "file:serverless-python-requirements-6.1.1.tgz"
}
}
2 changes: 1 addition & 1 deletion tests/poetry_packages/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,6 @@
"author": "",
"license": "ISC",
"dependencies": {
"serverless-python-requirements": "file:serverless-python-requirements-6.0.1.tgz"
"serverless-python-requirements": "file:serverless-python-requirements-6.1.1.tgz"
}
}

0 comments on commit 58aee03

Please sign in to comment.