github.dev, is just a simple VSCode but in the cloud. It may get a coloring if it would allow at least our main extensions for ObjectScript, which in fact provide a basic coloring. GitHub.com itself uses coloring from another source, which in fact almost the same as for VSCode.

I'll look at github.com, and maybe I will find a solution, how to get coloring there somehow. And thinking about Codespaces feature as well.

As I know, there is no way to have a schedule for the whole production. Just only services can have scheduled.

With working hours 8:00-18:00, will be something like this.

START:WEEK-*-01T08:00:00,STOP:WEEK-*-01T18:00:00,START:WEEK-*-02T08:00:00,STOP:WEEK-*-02T18:00:00,START:WEEK-*-03T08:00:00,STOP:WEEK-*-03T18:00:00,START:WEEK-*-04T08:00:00,STOP:WEEK-*-04T18:00:00,START:WEEK-*-05T08:00:00,STOP:WEEK-*-05T18:00:00

USER>set json = [0,1,2]                                                                                     

USER>set json = [0,1,2], iter = json.%GetIterator()

USER>while iter.%GetNext(.key, .val){ write !,"[",key,"]=",val do:key=0 json.%Remove(key) }

[0]=0
[1]=2
USER>zw json
json=[1,2]  ; <DYNAMIC ARRAY>

And even with %Remove will not reach subsequent items

I think this may help

ClassMethod CleanNull(json As %DynamicObject) As %DynamicObject
{
  Set iter = json.%GetIterator()
  Set toRemove = ""
  While iter.%GetNext(.key, .value) {
    Set type = json.%GetTypeOf(key)
    If (type="null") {
      Set toRemove = toRemove _ $Listbuild(key)
    }
    ElseIf (type="object")||(type="array") {
      Set $Property(json, key) = ..CleanNull(value)
    }
  }
  Set ptr = 0, corr = 0
  While $Listnext(toRemove, ptr, key) {
    Do json.%Remove(key - corr)
    set corr = corr + 1
  }
  Return json
}

And Testing metho

ClassMethod TestJSON()
{
  set json = {
    "recipients": [ 
      { "name":"Utsavi", "email":"utsavi@gmail.com"},
      { "name":"Utsavi 1", "email":"utsavi1@gmail.com"},
      null, null
    ],
    "content":[null, {"title":"Test.pdf", "data":"ygwehfbnwfbhew"} ]
  }
  Set result = ..CleanNull(json)
  Do result.%ToJSON()
}

Will return this

{"recipients":[{"name":"Utsavi","email":"utsavi@gmail.com"},{"name":"Utsavi 1","email":"utsavi1@gmail.com"}],"content":[{"title":"Test.pdf","data":"ygwehfbnwfbhew"}]}

What the issue you faced?

Class User.Rest Extends %CSP.REST
{

XData UrlMap [ XMLNamespace = "http://www.intersystems.com/urlmap" ]
{
<Routes>
<Route Url="/:resource/(.*)" Method="GET" Call="GetResource" Cors="true"/>
<Route Url="/ping" Method="GET" Call="Ping" Cors="true"/>
</Routes>
}

ClassMethod Ping() As %String
{
  Write {"pong": true}.%ToJSON()
  Return $$$OK
}

ClassMethod GetResource(pResource As %String, pId As %String) As %Status
{
  Write {"resource": (pResource), "id": (pId)}.%ToJSON()
  Return $$$OK
}

}

With this REST class, I can do queries like this http://localhost:52773/rest/patient/test/123/456, with no issues it returns {"resource":"patient","id":"test/123/456"}