@rip-lang/server 1.3.42 → 1.3.44

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/package.json +2 -2
  2. package/server.rip +6 -3
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rip-lang/server",
3
- "version": "1.3.42",
3
+ "version": "1.3.44",
4
4
  "description": "Pure Rip web framework and application server",
5
5
  "type": "module",
6
6
  "main": "api.rip",
@@ -45,7 +45,7 @@
45
45
  "author": "Steve Shreeve <steve.shreeve@gmail.com>",
46
46
  "license": "MIT",
47
47
  "dependencies": {
48
- "rip-lang": ">=3.13.59"
48
+ "rip-lang": ">=3.13.61"
49
49
  },
50
50
  "files": [
51
51
  "api.rip",
package/server.rip CHANGED
@@ -595,7 +595,7 @@ class Manager
595
595
  timer = null
596
596
  @server?.broadcastChange(prefix, pending)
597
597
  pending = null
598
- , 100
598
+ , 300
599
599
  for dir in dirs
600
600
  try
601
601
  w = watch dir, { recursive: true }, (event, filename) ->
@@ -832,7 +832,7 @@ class Server
832
832
  if path.endsWith('/watch')
833
833
  watchPrefix = path.slice(0, -6) # strip '/watch'
834
834
  if @watchGroups.has(watchPrefix)
835
- return @handleWatch(watchPrefix)
835
+ return @handleWatch(watchPrefix, req)
836
836
  else
837
837
  return new Response('', { status: 503, headers: { 'Retry-After': '2' } })
838
838
 
@@ -883,9 +883,11 @@ class Server
883
883
  return if @watchGroups.has(prefix)
884
884
  @watchGroups.set prefix, { sseClients: new Set() }
885
885
 
886
- handleWatch: (prefix) ->
886
+ handleWatch: (prefix, req) ->
887
887
  group = @watchGroups.get(prefix)
888
888
  return new Response('not-found', { status: 404 }) unless group
889
+ ua = req?.headers?.get('user-agent') or 'unknown'
890
+ console.log "rip-server: SSE connect from: #{ua}"
889
891
  encoder = new TextEncoder()
890
892
  client = null
891
893
  new Response new ReadableStream(
@@ -908,6 +910,7 @@ class Server
908
910
  group = @watchGroups.get(prefix)
909
911
  return unless group
910
912
  dead = []
913
+ console.log "rip-server: broadcast #{type} to #{group.sseClients.size} clients"
911
914
  for client as group.sseClients
912
915
  try client.send(type)
913
916
  catch then dead.push(client)