Bump versions, update scripts

This commit is contained in:
Jon Staab
2024-08-01 15:51:58 -07:00
parent 7bb6d8c54a
commit dd3fb2c7c6
16 changed files with 101 additions and 34 deletions
+1 -1
View File
@@ -1,5 +1,5 @@
#!/bin/bash #!/bin/bash
for package in $(ls packages); do for package in $(./get_packages.py); do
./build_and_link.sh $package ./build_and_link.sh $package
done done
+1 -1
View File
@@ -5,7 +5,7 @@ upstream=$1
npm run build -w @welshman/$upstream npm run build -w @welshman/$upstream
npm run lint -w @welshman/$upstream npm run lint -w @welshman/$upstream
for downstream in $(ls packages); do for downstream in $(./get_packages.py); do
n=@welshman/$upstream n=@welshman/$upstream
f=packages/$downstream/package.json f=packages/$downstream/package.json
v=$(jq '.dependencies["'$n'"] // empty' $f) v=$(jq '.dependencies["'$n'"] // empty' $f)
+1 -1
View File
@@ -1,6 +1,6 @@
#!/bin/bash #!/bin/bash
for package in $(ls packages); do for package in $(./get_packages.py); do
tag=$(git describe --tags --abbrev=0 --match=$package'/*') tag=$(git describe --tags --abbrev=0 --match=$package'/*')
changes=$(git diff "$tag" "packages/$package" | wc -l) changes=$(git diff "$tag" "packages/$package" | wc -l)
+62
View File
@@ -0,0 +1,62 @@
#!/usr/bin/env python3
import os
import json
from collections import defaultdict
def parse_package_json(file_path):
with open(file_path, 'r') as f:
return json.load(f)
def get_dependencies(package_data):
dependencies = set()
for dep_type in ['dependencies', 'devDependencies', 'peerDependencies']:
if dep_type in package_data:
dependencies.update(package_data[dep_type].keys())
return dependencies
def topological_sort(graph):
visited = set()
stack = []
def dfs(node):
visited.add(node)
for neighbor in graph[node]:
if neighbor not in visited:
dfs(neighbor)
stack.append(node)
for node in graph:
if node not in visited:
dfs(node)
return stack[::-1]
def main():
packages_dir = 'packages'
package_graph = defaultdict(set)
all_packages = set()
# Walk through the packages directory
for package_name in os.listdir(packages_dir):
package_path = os.path.join(packages_dir, package_name)
if os.path.isdir(package_path):
package_json_path = os.path.join(package_path, 'package.json')
if os.path.exists(package_json_path):
all_packages.add(package_name)
package_data = parse_package_json(package_json_path)
dependencies = get_dependencies(package_data)
# Only consider dependencies that are in the packages directory
internal_dependencies = dependencies.intersection(all_packages)
package_graph[package_name].update(internal_dependencies)
# Perform topological sort
sorted_packages = topological_sort(package_graph)
# Output the result
for package in sorted_packages:
print(package)
if __name__ == "__main__":
main()
+2 -2
View File
@@ -1,9 +1,9 @@
#!/bin/bash #!/bin/bash
for upstream in $(ls packages); do for upstream in $(./get_packages.py); do
version=$(sed -nr 's/ +"version": "(.+)",/\1/p' packages/$upstream/package.json) version=$(sed -nr 's/ +"version": "(.+)",/\1/p' packages/$upstream/package.json)
for downstream in $(ls packages); do for downstream in $(./get_packages.py); do
n=@welshman/$upstream n=@welshman/$upstream
f=packages/$downstream/package.json f=packages/$downstream/package.json
v=$(jq '.dependencies["'$n'"] // empty' $f) v=$(jq '.dependencies["'$n'"] // empty' $f)
+13 -13
View File
@@ -3265,7 +3265,7 @@
}, },
"packages/content": { "packages/content": {
"name": "@welshman/content", "name": "@welshman/content",
"version": "0.0.5", "version": "0.0.6",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@braintree/sanitize-url": "^7.0.2", "@braintree/sanitize-url": "^7.0.2",
@@ -3279,12 +3279,12 @@
}, },
"packages/dvm": { "packages/dvm": {
"name": "@welshman/dvm", "name": "@welshman/dvm",
"version": "0.0.2", "version": "0.0.3",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@welshman/lib": "0.0.11", "@welshman/lib": "0.0.12",
"@welshman/net": "0.0.14", "@welshman/net": "0.0.15",
"@welshman/util": "0.0.22", "@welshman/util": "0.0.23",
"nostr-tools": "^2.7.0" "nostr-tools": "^2.7.0"
}, },
"devDependencies": { "devDependencies": {
@@ -3295,10 +3295,10 @@
}, },
"packages/feeds": { "packages/feeds": {
"name": "@welshman/feeds", "name": "@welshman/feeds",
"version": "0.0.12", "version": "0.0.13",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@welshman/util": "0.0.22" "@welshman/util": "0.0.23"
}, },
"devDependencies": { "devDependencies": {
"gts": "^5.0.1", "gts": "^5.0.1",
@@ -3308,7 +3308,7 @@
}, },
"packages/lib": { "packages/lib": {
"name": "@welshman/lib", "name": "@welshman/lib",
"version": "0.0.11", "version": "0.0.12",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@scure/base": "^1.1.6", "@scure/base": "^1.1.6",
@@ -3332,11 +3332,11 @@
}, },
"packages/net": { "packages/net": {
"name": "@welshman/net", "name": "@welshman/net",
"version": "0.0.14", "version": "0.0.15",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@welshman/lib": "0.0.11", "@welshman/lib": "0.0.12",
"@welshman/util": "0.0.22", "@welshman/util": "0.0.23",
"isomorphic-ws": "^5.0.0", "isomorphic-ws": "^5.0.0",
"ws": "^8.16.0" "ws": "^8.16.0"
}, },
@@ -3361,10 +3361,10 @@
}, },
"packages/util": { "packages/util": {
"name": "@welshman/util", "name": "@welshman/util",
"version": "0.0.22", "version": "0.0.23",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@welshman/lib": "0.0.11", "@welshman/lib": "0.0.12",
"nostr-tools": "^2.3.2" "nostr-tools": "^2.3.2"
}, },
"devDependencies": { "devDependencies": {
+1 -1
View File
@@ -1,6 +1,6 @@
{ {
"name": "@welshman/content", "name": "@welshman/content",
"version": "0.0.5", "version": "0.0.6",
"author": "hodlbod", "author": "hodlbod",
"license": "MIT", "license": "MIT",
"description": "A collection of utilities for parsing nostr note content.", "description": "A collection of utilities for parsing nostr note content.",
+4 -4
View File
@@ -1,6 +1,6 @@
{ {
"name": "@welshman/dvm", "name": "@welshman/dvm",
"version": "0.0.2", "version": "0.0.3",
"author": "hodlbod", "author": "hodlbod",
"license": "MIT", "license": "MIT",
"description": "A collection of utilities for building nostr DVMs.", "description": "A collection of utilities for building nostr DVMs.",
@@ -31,9 +31,9 @@
"typescript": "~5.1.6" "typescript": "~5.1.6"
}, },
"dependencies": { "dependencies": {
"@welshman/lib": "0.0.11", "@welshman/lib": "0.0.12",
"@welshman/net": "0.0.14", "@welshman/net": "0.0.15",
"@welshman/util": "0.0.22", "@welshman/util": "0.0.23",
"nostr-tools": "^2.7.0" "nostr-tools": "^2.7.0"
} }
} }
+2 -2
View File
@@ -1,6 +1,6 @@
{ {
"name": "@welshman/feeds", "name": "@welshman/feeds",
"version": "0.0.12", "version": "0.0.13",
"author": "hodlbod", "author": "hodlbod",
"license": "MIT", "license": "MIT",
"description": "Utilities for building dynamic nostr feeds.", "description": "Utilities for building dynamic nostr feeds.",
@@ -31,6 +31,6 @@
"typescript": "~5.1.6" "typescript": "~5.1.6"
}, },
"dependencies": { "dependencies": {
"@welshman/util": "0.0.22" "@welshman/util": "0.0.23"
} }
} }
+1 -1
View File
@@ -1,6 +1,6 @@
{ {
"name": "@welshman/lib", "name": "@welshman/lib",
"version": "0.0.11", "version": "0.0.12",
"author": "hodlbod", "author": "hodlbod",
"license": "MIT", "license": "MIT",
"description": "A collection of utilities.", "description": "A collection of utilities.",
+3 -3
View File
@@ -1,6 +1,6 @@
{ {
"name": "@welshman/net", "name": "@welshman/net",
"version": "0.0.14", "version": "0.0.15",
"author": "hodlbod", "author": "hodlbod",
"license": "MIT", "license": "MIT",
"description": "Utilities for connecting with nostr relays.", "description": "Utilities for connecting with nostr relays.",
@@ -31,8 +31,8 @@
"typescript": "~5.1.6" "typescript": "~5.1.6"
}, },
"dependencies": { "dependencies": {
"@welshman/lib": "0.0.11", "@welshman/lib": "0.0.12",
"@welshman/util": "0.0.22", "@welshman/util": "0.0.23",
"isomorphic-ws": "^5.0.0", "isomorphic-ws": "^5.0.0",
"ws": "^8.16.0" "ws": "^8.16.0"
} }
+2 -2
View File
@@ -1,6 +1,6 @@
{ {
"name": "@welshman/util", "name": "@welshman/util",
"version": "0.0.22", "version": "0.0.23",
"author": "hodlbod", "author": "hodlbod",
"license": "MIT", "license": "MIT",
"description": "A collection of nostr-related utilities.", "description": "A collection of nostr-related utilities.",
@@ -31,7 +31,7 @@
"typescript": "~5.1.6" "typescript": "~5.1.6"
}, },
"dependencies": { "dependencies": {
"@welshman/lib": "0.0.11", "@welshman/lib": "0.0.12",
"nostr-tools": "^2.3.2" "nostr-tools": "^2.3.2"
} }
} }
Executable
+5
View File
@@ -0,0 +1,5 @@
#!/bin/bash
for package in $(./get_packages.py); do
npm run pub -w "packages/$package"
done
+1 -1
View File
@@ -1,6 +1,6 @@
#!/bin/bash #!/bin/bash
for pkg in $(ls packages); do for pkg in $(./get_packages.py); do
version=$(sed -nr 's/ +"version": "(.+)",/\1/p' packages/$pkg/package.json) version=$(sed -nr 's/ +"version": "(.+)",/\1/p' packages/$pkg/package.json)
status=$(git status | grep "nothing to commit") status=$(git status | grep "nothing to commit")
+1 -1
View File
@@ -1,6 +1,6 @@
#!/bin/bash #!/bin/bash
for upstream in $(ls packages); do for upstream in $(./get_packages.py); do
version=$(sed -nr 's/ +"version": "(.+)",/\1/p' packages/$upstream/package.json) version=$(sed -nr 's/ +"version": "(.+)",/\1/p' packages/$upstream/package.json)
echo $upstream $version echo $upstream $version
+1 -1
View File
@@ -2,7 +2,7 @@
./build.sh ./build.sh
for package in $(ls packages); do for package in $(./get_packages.py); do
npx onchange packages/$package -e '**/build/**' -k -- ./build_and_link.sh $package & npx onchange packages/$package -e '**/build/**' -k -- ./build_and_link.sh $package &
done done