First implementation for two endpoints.

First implementation for SD3.

We should build on V2 to be compatible with the V1 API, not simply move Python code to Golang. If we are just moving code, we can merely use Cython to speed up the original SD2 or further optimize on top of SD2. - we could do better. And this database design, like I said before, can lead to performance issues.

Don't worry, unfortunately we can't change DB before changing backend, and we should keep backward compatibility first. We will do a lot with schemas a bit later. Please check all endpoints, requests, responses.

We should build on V2 to be compatible with the V1 API, not simply move Python code to Golang. If we are just moving code, we can merely use Cython to speed up the original SD2 or further optimize on top of SD2. - we could do better. And this database design, like I said before, can lead to performance issues.

Don't worry, unfortunately we can't change DB before changing backend, and we should keep backward compatibility first. We will do a lot with schemas a bit later. Please check all endpoints, requests, responses.

just write Database Migration Code ↓
https://github.com/Aloento/StatusDashboard/blob/master/Services/Status.cs#L21

About the Database
I agree with something Vladi once said, “Later is never.” So, I strongly recommend developing the new database structure now. We don't need to consider compatibility with the old backend because the new backend will run on a new database instance. We only need to perform a one-time data migration when going live, and this process is quite simple. Our test instance can directly use the migrated data for demonstration. The data in my SD3 C# version is migrated in real-time, and it already supports complete and rapid migration. If it’s too complicated to write in Golang, I can modify the C# migration code to adapt to our new backend since migration is a one-time task. I’ve attached my designed database structure, hoping it will help you all.
OpenAPI v2
Front-end requests are cached, and only a fine-grained API can maximize front-end caching.
/v2/Event
We do not call it an incident because a maintenance event is not an incident, so now we use Event.
GET /v2/Events
list all event ids
this is for page https://sd3.eco.tsi-dev.otc-service.com/History
GET /v2/Event/{id}
get event entity by id
this is for pages like https://sd3.eco.tsi-dev.otc-service.com/Event/205
with related region ids, related component ids
not contain the update data
GET /v2/Event/{id}/Updates
Return all update entities of the event
GET /v2/Events/Active
return all Current Events ids
this is for home page component https://sd3.eco.tsi-dev.otc-service.com/#:~:text=working on it.-,Current Events,-ID
POST /v2/Event
Create a new event
PATCH /v2/Event/{id}
Update event by patch method and push new update entity at the same time

The main difference between PUT and PATCH in the REST API is that PUT completes the update operation by replacing the entire entity. In contrast, PATCH only updates the fields you provide and doesn't change any other values. If you use the PUT method, the entire content of the resource you update is updated.

POST /v2/Event/{id}/Split
by given the [{Service_Id}, {Region_Id}] pairs, split the event into two events.
POST /v2/Event/Merge
Merge two events into one event by providing the two event IDs, new event titles, descriptions, etc.
/v2/Region
GET /v2/Regions
List all region entities
Not contain any component data or event data or category data
GET /v2/Region/{id}/Categories
Return all categories ids present in the region
/v2/Category
GET /v2/Categories
List all categories entity
Not contain any component data or event data
GET /v2/Category/{id}/Services
Return all component ids present in the category
/v2/Service
GET /v2/Services
list all component ids
GET /v2/Service/{id}
get component entity by id
with related category id, and related region ids
GET /v2/Service/{id}/Events
Return all event ids present in the component
/v2/Availability
GET /v2/Availability/{Service_Id}/{Region_Id}
return the availability of the component in the last 6 months
like [100, 42.24, 70.44, ...]


Design input needed: Add OAuth2 auth workflow to connector configuration page

Is your feature request related to a specific problem?
Connectors using the oauth2_authorization_code authentication strategy require the user to follow an authorization URL and log into the auth provider before the connection can be usable.
Describe the solution you'd like

Save the secrets in the connector configuration page
Click on test connection
If the connection is not authorized (no access key is found in the secrets) then the user should be redirected to the URL returned from calling /connection/{{fides_key}}/authorize
After the user has entered their credentials, the 3rd party API will post the auth code back to Fides' /oauth/callback endpoint where it will be exchanged for access/refresh tokens (all of this is already implemented).
The UI should poll the server to show a connection test status after an access key is available and the connection test is attempted

Details

Poll every second (does it need a timeout?)
May need to pass a prop based on the connection type (if OAuth is present in the config)
There needs to be a new backend endpoint to return a status

@mfbrown @galvana @chriscalhoun1974 Work on a quick workflow diagram

@galvana  do we need them to enter their secret to know oAuth is required or can we infer this in another way?

Good callout, it's not clear from the doc but the enter "credentials > authorize connection" portion is just to indicate that the connection can't be authorized until all secrets are provided. However, we will know if a connection needs OAuth when the connector form is loaded initially and reflect it in the UI with the presence of the "authorize connection" button.

Final design


OSC-Platform-013: Running GPU workloads

As a developer on the corporate data pipeline, I need to access GPU to run the NLP code

GPUs are now available on the cluster, Erik is planning to create a notebook image with GPU enabled as example. Once available / tested we can close this item.

I've added a high priority label to this item as the NLP team is blocking on notice that their GPU workload is ready to proceed.

We have verified that jupyter notebooks can access the gpu resources on the cluster, so I am closing.


Payment requests clientside

This PR introduces:

API support for stellar/submitrequest and stellar/requestdetails endpoints.
RPC that prepare Stellar request, and call the API; as well as RPC that fetches request and "localizes" it for use in rendering.
Chat message type for requests and cli rendering for that message.
Small test for creating request that mocks out the APIs and returns random KeybaseRequestID. The test checks if chat message has been sent.

Looks good...can you show what CLI rendering of these messages looks like?  Thanks!

thanks! CLI rendering:
[1]  [tuser719edc 22s]   requested Lumens worth 10 USD (54.7336387 XLM)
[2]  [tuser719edc 13s]   requested 20 XLM
                         > hello

Nice! Ok I'm ready to approve.  Let's coordinate with @mmaxim to vendor the msgchecker into gregor and deploy it.


[StateKeeper] Add another register method with onError parameter

The current statekeeper implementation is pretty nice, espacially when using Decompose, however I think this feature should be supported.
Currently the StateKeeper has this method only
fun <T : Parcelable> register(key: String, supplier: () -> T?)

An additional (optional) onError method would be handy
fun <T : Parcelable> register(key: String, supplier: () -> T?, onError: (T?, Throwable) -> Unit)

To handle the exception and saving yourself.
E.g. some (Android) devices could throw a TooLargeException, so we could save it in a file for example as fallback

I believe TransactionTooLargeException can not be intercepted, because it happens internally when the Bundle is serialized.
Also I don't understand how is the linked issue https://github.com/DATL4G/BurningSeries-Android/issues/20 related? E.g. Compose saves the scrolling positions automatically. With normal Android views the UI should save the scrolling position, e.g. via StateKeeper. How is it related to error handling?

Should be possible to wrap the saving method by try - catch / runCatching.
It's not completly related to https://github.com/DATL4G/BurningSeries-Android/issues/20 but I save a pretty large state and putting the app in background throws an Exception.
The App crashes and the scroll state is lost

Should be possible to wrap the saving method by try - catch / runCatching.

I don't see any place where this could be done. StateKeeper just builds a Bundle with data, at this point there are no errors thrown. The Bundle is then given to Android where it's serialized, and where errors may happen. See the code.
The following code is basically equivalent:
    private lateinit var stateKeeper: StateKeeperDispatcher

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        stateKeeper  = StateKeeperDispatcher(savedState = savedInstanceState?.getParcelable(KEY_SAVED_STATE))
    }

    override fun onSaveInstanceState(outState: Bundle, outPersistentState: PersistableBundle) {
        super.onSaveInstanceState(outState, outPersistentState)

        // No errors thrown here
        outState.putParcelable(KEY_SAVED_STATE, stateKeeper.save())
    }

    private companion object {
        private const val KEY_SAVED_STATE = "saved_state"
    }
}

So an error may be thrown internally once onSaveInstanceState returned.

Previously I did something like this
override fun onSaveInstanceState(): Parcelable {
    val state = try {
        super.onSaveInstanceState()
    } catch (ignored: Exception) {
        BaseSavedState.EMPTY_STATE
    }
    val save = try {
        SaveState(
            data1,
			data2
        )
    } catch (ignored: Exception) { state }

    return save ?: BaseSavedState.EMPTY_STATE
}

This looks like saving state in an Android View, I believe TransactionTooLargeException may not be thrown there. Perhaps some other view-specific errors are possible though. But this looks unrelated to using StateKeeper for Activity/Fragment state preservation. There are no errors thrown when calling StateKeeper#save, unless there is a bug in the application.

Okay seems like there is not really a way to catch that.
But maybe you could provide the bundle or something like a check method (instead of onError) so we can check the size of the bundle

Perhaps it is already possible!
First of all, add the following function to calculate the size of Parcelable.
fun Parcelable.getSizeInBytes(): Int {
    val parcel = Parcel.obtain()
    try {
        parcel.writeParcelable(this, 0)
        return parcel.marshall().size
    } finally {
        parcel.recycle()
    }
}

Then there are at least two options.

Check the size of the Bundle in onSaveInstanceState as follows:

override fun onSaveInstanceState(outState: Bundle) {
    val bundle = Bundle()
    super.onSaveInstanceState(bundle)

    if (bundle.getSizeInBytes() <= SAVED_STATE_MAX_SIZE) {
        outState.putAll(bundle)
    } else {
        // Do something else
    }
}

Create StateKeeper in Activity or Fragment manually as follows:

private const val KEY_STATE = "STATE_KEEPER_STATE"
private const val SAVED_STATE_MAX_SIZE = 500_000_000

fun SavedStateRegistryOwner.stateKeeper(onBundleTooLarge: () -> Unit = {}): StateKeeper {
    val dispatcher = StateKeeperDispatcher(savedStateRegistry.consumeRestoredStateForKey(KEY_STATE)?.getParcelable(KEY_STATE))

    savedStateRegistry.registerSavedStateProvider(KEY_STATE) {
        val savedState = dispatcher.save()
        val bundle = Bundle()

        if (savedState.getSizeInBytes() <= SAVED_STATE_MAX_SIZE) {
            bundle.putParcelable(KEY_STATE, savedState)
        } else {
            onBundleTooLarge()
        }

        bundle
    }

    return dispatcher
}

Would this work for you?

I'm using decompose so the statekeeper is already created, I'm not creating it on my own

You can still create StateKeeper on your own, you will also need to create the root ComponentContext manually:
DefaultRootComponent(
    componentContext = DefaultComponentContext(
        lifecycle = essentyLifecycle(),
        stateKeeper = stateKeeper(onBundleTooLarge = { ... }),
        instanceKeeper = instanceKeeper(),
        backHandler = backHandler(),
    ),
)

This works thanks.
The max size is 500_000 btw.
The getParcelable(key: String) is deprecated and getParcelable(key: String, clazz: Clazz<T>) should be used.
Is it possible to use that method?

Ah sorry, it's 500_000 indeed.
Yes, it should be possible to use the new getParcelable method, but only on API>=33. See the docs - https://developer.android.com/reference/android/os/Bundle#getParcelable(java.lang.String, java.lang.Class<T>)

There seems to be a bug in the new getParcelable method that may throw a NullPointerException.
I will leave this little code snippet if anyone else needs it
@Suppress("DEPRECATION")
inline fun <reified T : Parcelable> Bundle.getCompatParcelable(key: String): T? {
    return if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) {
        val result = runCatching {
            this.getParcelable(key, T::class.java)
        }
        if (result.isFailure) {
            this.getParcelable(key)
        } else {
            result.getOrNull()
        }
    } else {
        this.getParcelable(key)
    }
}

Thanks! Closing the issue for now.


Add a page to link the Toolchain documentation

I have added a new page to hold information about the Toolchain.
For now, it just includes links to the current documentation. The plan is to migrate here the content for future workshops and dissemination activities.

I still have to rebuild and publish.

Many thanks! @fmrico  could you please run the pipeline to publish the new content.

Done!!!


Generate QR codes from HTML and Markdown

Does Gotenberg have a feature that can generate a QR code into the PDF?
Currently, I'm using mPDF which will generate a QR code if the HTML contains this markup:
<barcode code="Your message here" type="QR" class="barcode" size="0.8" error="M" />

mPDF is difficult to use and CSS support is limited, so I prefer to use Gotenberg.

Hello @quinncomendant,
Best option is to try to convert an HTML document with this markup. Gotenberg uses Chromium to di the heavy lifting, so if Chromium handles it, Gotenberg does too 😉


sample app "shrine" example shopping cart display isnt done

bottom right, the shopping cart examples are invisible when initially added. (They can be made visible by going into the cart and then leaving again. Which is the only reason I realize they're supposed to be visible.)
(I should also mention that the slant at the top left looks quite bad. I don't know why this bugs me, but it does lower a person's view of flutter to see bad graphic design in the examples.)

@makoConstruct
Since Shrine example is a part of Flutter gallery app, it has a separate repo for tracking issues, so I am transferring this issue to dedicated repo.


[c#] KV log scanner hangs on GetNext

Using FasterKV from class based c# playground example with some minor modifications:
    public class MyKey : IFasterEqualityComparer<MyKey>
    {
        public string Key;

        public long GetHashCode64(ref MyKey key)
        {
            long x = key.Key.GetHashCode();
            return (x << 32) | x;
        }

        public bool Equals(ref MyKey key1, ref MyKey key2)
        {
            return key1.Key.Equals(key2.Key);
        }
    }

    public class MyValue
    {
        public byte[] Data;
    }

Initialization:
            faster = new FasterKV
                <MyKey, MyValue, MyInput, MyOutput, Empty, MyFunctions>
                (1L << 20, new MyFunctions(),
                new LogSettings {  LogDevice = log, ObjectLogDevice = objlog, MemorySizeBits = 27, PageSizeBits = 23 },
                new CheckpointSettings() { CheckpointDir = "c:\\temp\\cdp\\FASTER\\checkpoints", CheckPointType = CheckpointType.FoldOver },
                new SerializerSettings<MyKey, MyValue> { keySerializer = () => new MyKeySerializer(), valueSerializer = () => new MyValueSerializer() }
                );

I add 100,000,000 KVP's with random data, take a checkpoint, and then try iterating all logs such as (no other operations happening):
            var scanner = faster.Log.Scan(faster.Log.BeginAddress, faster.Log.TailAddress);
            while (scanner.GetNext(out var info, out MyKey key, out MyValue value))
            {
                Interlocked.Increment(ref numOps);
            }

The code hangs indefinitely on scanner.GetNext with CPU usage stuck at around 25% (1 core of a 4 core machine). I haven't got a chance to dig into the code for GenericScanIterator but do see the main logic is in a while loop so could explain it getting stuck if something was out of wack with addresses. Is there something obviously wrong with what I'm doing?

I think this was caused by serialization issues. I wasn't seeing exceptions but it seems to have resolved itself once I noticed the ref MyKey key / ref MyValue value were null when passed into the de-serialization for values that had to be read from disk. I don't see any examples that construct the object but most are with structs or don't read from disk.  After adding key ??= new MyKey(); the scanning is working.
I'd suggest for the examples in the playground working with classes to add in the null check / constructor. It is needed in the IFunctions implementations as well.

Looks like it's acctually a bug in the GenericScanIterator:
Current code:
                if (frame.GetInfo(currentFrame, offset).Invalid)
                    continue;

Needed fix:
                if (frame.GetInfo(currentFrame, offset).Invalid)
                {
                    currentAddress += recordSize;
                    continue;
                }

I'll do a PR if I get CLA approval from work otherwise should be simple fix.

Thanks, we are fixing it (required a few edits in other places are well).

Fixed in master.

Great, will reference source directly until the next release.
What causes invalid records? I had several parallel writers of upserts only with no shared keyspace. I thought they would all just write at the tail successfully.

If a tail allocation is insufficient (at the end of a page, for example, we might not have enough space for the record), we have to mark it invalid and retry on the next page. That might explain it.


Loadouts don't check if an item is valid in that loadout

Description
Loadouts need to check if loadout items are valid, since you can spawn with invalid prototypes and prototypes that aren't even in the loadout (such as security armor)
Reproduction

have an item that gets deleted in your loadout

spawn with nothing until you manually change the loadout

edit your character export file, change PassengerOuterclothing to WardenOuterclothing in the passenger loadout, import the character

get free warden armor roundstart

Additional context
Just check if the loadout item is actually in the loadout, if not revert to default

Specifically, if anything is wrong with the loadout, it should probably revert to the default and notify the player

This also applies to if a loadout item gets changed, for example the passenger jumpsuit gets changed to a white jumpsuit, people who had the grey jumpsuit previously will still spawn with the grey one, rather than it getting switched to white

The steps on how to reproduce it are a bit confusing but I got it working on the lobby, haven't tested joining with it yet.
I love that I can get the clown winter coat into a mime's loadout with this, but I already see how it can be heavily exploited, it essentially lets you get loadout items from other jobs/roles.

Can't repro? Are you on master?

I haven't tried to reproduce it myself, but people have been consistently reporting it
#28696
#28598
#28137
The last one actually has some logs that might be relevant

I know it used to be a problem but I made https://github.com/space-wizards/space-station-14/pull/28311 this as I forgot to check the group itself contained it.

Can't repro? Are you on master?

I wasn't on master but I just tested on the latest server build and also on wizden's lobby, it still worked.
Here, try creating a new character then importing this one into it: Captain-Passenger.zip

Okay yeah I did the same thing twice, will have pr up in a bit.


enable zappa tails for event source S3 and SNS

Context
Zappa tails commandline utility is very useful for debugging Lambda functions via the python logging module.
Expected Behavior
Zappa tails should also work for lambda activated via events S3 and SNS.
Actual Behavior
CloudWatch streams are not created during deploy thus when the user run zappa tails there is the error: botocore.errorfactory.ResourceNotFoundException: An error occurred (ResourceNotFoundException) when calling the DescribeLogStreams operation: The specified log group does not exist.
Possible Fix
Steps to Reproduce
Deploy the example provided with S3 or SNS event and then run zappa tail.
Your Environment

Zappa version used: 0.45.1
Operating System and Python version: OSX both python 2.7 and 3.6

Huge one.
Would also be able to great to be filter streams by event source, ex zappa tail --source s3

Maybe you are thinking to big , what I want is just to enable logging module inside the function so that when you call log(“blah”) it ends up in the watch log .
I imagined this will be a very minor change ?
Sent from my iPhone

On 14 Nov 2017, at 17:55, Rich Jones<EMAIL_ADDRESS>wrote:
Huge one.
Would also be able to great to be filter streams by event source, ex zappa tail --source s3
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.


2 things

This is great !
the website for this thing is slick
#1 I think it would be nice to have the ip address to continue to scroll at startup.
#2 I closed too many tabs.  What is the link for communit.homeassistant where I found this and posted?  I figured out how to post my temps to mqtt and wanted to add it.
Thanks,
Grey

After a detailed study of your proposal, I found out that the constant display of the IP address after switching on will block the main functionality of the device. Therefore, the IP address will be shown once on boot. If you missed it then you can always reboot your device and see the IP address again.
All I could do was slightly increase the display time of the IP address on the screen.


Question - Is it possible to schedule multiple renewals instead of just one?

It might help to know a bit more about what you are trying to do, because the program can handle renewing multiple certificates.
The default scheduled task it creates runs daily at 9am and checks the registry key HKEY_CURRENT_USER\Software\letsencrypt-win-simple\https://acme-v01.api.letsencrypt.org/Renewals for the list of certificates. It checks the dates on them and renews any that need it, leaving the others.

Thanks!

Sorry, one more question. Let's say I create san certs and then create a separate cert manually. Will that manual creation make it to this registry key? Or will I need to add it manually? @mattkemp

@mchupp all certs made with letsencrypt-win-simple get an entry in that registry key. If you


[Feature] allow path to a directory containing a manifest or a manifest as a Config::server()

luarocks allows you to pass a directory containing a manifest (or a path to a manifest, I don't recall) as a --server.
This can be useful for local debugging. We should support it too.

I don't like having too many flags but --local-server could be a nice way of fragmenting the code to prevent spaghetti? Then we can add a parser to clap to ensure that --server is a well-formed URI. I always hated luarocks's "do everything in one go" approach to the CLI.

I like the idea.


Never show QID, always show human-readable text

In Nearby, https://www.wikidata.org/wiki/Q11661218 is shown as "Q11661218" because no English name is available.
In non-English speaking countries, most items don't have an English name.
Showing a QID is the most user-unfriendly thing, we should always show human-readable text, in this order of preference:

In the user's phone's language
In the local language of the item (or one of the local languages, for multilingual places like Mauritius)
In any language available. I believe all Wikidata items have at least a label in one language, the name of the article they were created from.

Hm, the first few items of the Wiki Needs Pictures CSV file is in Japanese I think? Interesting that some items have a QID and some have the translated name.
Is this something we need to report to the Wiki Needs Pictures project, or can we fix it ourselves (say, by searching the Wikidata API for that QID or such?).

I hadn't thought about implementation much.
We could either have only QIDs in the CSV file and then request Wikidata for local names, or embed all (or at least one) languages. If we (or wiki-needs-picture) build a dynamic server, we should be able to provide the user's preferred language in the web request.
We should indeed add an enhancement request to wiki-needs-picture once we agree on what we need.

One quick option would be to dynamically retrieve sitelinks (and perhaps up-to-date labels) using the Wikidata API. [1]
For example, the jawiki sitelink of Q11661218 https://www.wikidata.org/w/api.php?action=wbgetentities&ids=Q11661218 gives you something similar to a Japanese label:
        "sitelinks": {
            "jawiki": {
                "site": "jawiki",
                "title": "\u9752\u5c71\u5186\u5f62\u5287\u5834",
                "badges": []
            }
        }

(This item does lack a label but has a sitelink.)
Even better, to avoid using data from every client, we could ask the project to include these sitelink titles in the CSV.
[1] https://www.wikidata.org/w/api.php?action=help&modules=wbgetentities

Another fallback would be to display the value of the p31 statement. Those should have the maximum amount of translations. So for a unknown bridge it would say:
A bridge (from p31 = Q12280; https://www.wikidata.org/wiki/Property:P31 and https://www.wikidata.org/wiki/Q12280).

I am wondering if it would be easier to switch to query.wikidata because we can customize the query in more ways, then through the list.
This for example would allow more fallback languages and the user specifying the distance they want to search:
https://query.wikidata.org/#%23 Show the object missing images within 500 m of the user
%23defaultView%3AMap
SELECT %3Fplace %3FplaceLabel %3Ftype %3FtypeLabel %3Flocation WHERE {
  wd%3AQ64 wdt%3AP625 %3FcustomLoc .  %23 Replace with current location
  SERVICE wikibase%3Aaround {
      %3Fplace wdt%3AP625 %3Flocation .
      bd%3AserviceParam wikibase%3Acenter %3FcustomLoc .
      bd%3AserviceParam wikibase%3Aradius "0.5" . %23 km Radius for search
  }
  %3Fplace wdt%3AP31 %3Ftype .    %23 Has a instance of statement
  FILTER NOT EXISTS { %3Fplace wdt%3AP18 %3Fimage } %23 Has no image
  SERVICE wikibase%3Alabel {
    bd%3AserviceParam wikibase%3Alanguage "de%2Cen" . %23 de label has priority%2C en is fallback
  }
}
We also get the instance-of target item, so we can match the Q-ID to the item. It would also allow for really easy filtering. Only museums for example (in a 5 km radius):
https://query.wikidata.org/#%23 Show the object missing images within 500 m of the user
%23defaultView%3AMap
SELECT %3Fplace %3FplaceLabel %3Ftype %3FtypeLabel %3Flocation WHERE {
  wd%3AQ64 wdt%3AP625 %3FcustomLoc .  %23 Replace with current location
  SERVICE wikibase%3Aaround {
      %3Fplace wdt%3AP625 %3Flocation .
      bd%3AserviceParam wikibase%3Acenter %3FcustomLoc .
      bd%3AserviceParam wikibase%3Aradius "5" . %23 km Radius for search
  }
  %3Fplace wdt%3AP31 wd%3AQ7075 .    %23 Has a instance of statement
  FILTER NOT EXISTS { %3Fplace wdt%3AP18 %3Fimage } %23 Has no image
  SERVICE wikibase%3Alabel {
    bd%3AserviceParam wikibase%3Alanguage "de%2Cen" . %23 de label has priority%2C en is fallback
  }
}

I also started to wonder whether we should use Wikidata instead of wiki-needs-pictures.
Advantages of Wikidata:

Real-time. Add a picture to the item, and it disappears from the map immediately, not a week later.
Area queries works out-of-the-box, resulting in not having to download a multimegabytes file which is costly in terms of mobile data and phone memory. Implementing area queries for wiki-needs-pictures would require a lot of development and a good server.
Works for all Wikipedias, unlike wiki-needs-pictures which needs custom code for each Wikipedia (I added that code for the Japanese Wikipedia)

Advantages of wiki-needs-pictures:

Listed pictures really need someone to go there and take a picture (whereas on Wikidata most missing pictures are actually available on Commons and just not linked yet).
Special requests may be implemented in the future. For instance: there are are already pictures of this temple's exterior, but a picture of the inside is needed.

I think the Wikidata approach is promising.
Some optimization/caching strategies might have to be devised to reduce the frequency of querying, though. It seems that Wikidata queries take some time for the server to compute, not just the client to retrieve.
It might be reasonable to do a "mid-size" query initially to construct a prefecture/city level table. The app can then show the (possibly a bit inaccurate) near-by list of the current location without delay, while simultaneously issuing a new query to update it and make it more accurate.
It should also be possible to combine the current implementation and the idea of updating. The current implementation (as I understand it) is "one big cache" - there is one big table to be retrieved. When the user changes their location, it's just a matter of re-sorting the same table. Over time, it may get obsolete and might have to be retrieved again. Having two kinds of backends might be more complicated, though.

@whym : Is it really too slow?
If you have time, would you mind running queries in a few places and posting here the time it took? Thanks a lot!

Okay, with a more close look, it seems workable without complicated caching. It just can be slow,  depending on the query.
http://tinyurl.com/hzt8glu 5 km radius for "Tokyo" - 1201 Results in 3881 ms
http://tinyurl.com/zuujxes 5 km radius for "Berlin" - 920 Results in 6887 ms
It appears a bottleneck is the number of results. As tobias47n9e suggested, if you add a filter (like "musely only"), the results will be less and the response quicker.
If we can allow the user to choose from various filters including entity types and radius sizes interactively, that would be great. (maybe with a hard limit on the number of results.)  A 5 km radius might be too large (and too slow) for place like Berlin and Tokyo, while it shouldn't be too large for areas less covered by Wikidata.

I asked about universal fallback but no satisfying answer yet:
https://www.wikidata.org/wiki/Wikidata:Project_chat#Label_language:_How_to_fallback_to_ANY_language.3F

Sample showing how to get a Wikidata item's label in English if available and in any other language if no English label is available:
https://query.wikidata.org/#SELECT %3Fitem (SAMPLE(coalesce(%3Fen_label%2C %3Fitem_label)) as %3Flabel) WHERE {
  %3Fitem wdt%3AP31 wd%3AQ22674925 .
  optional {%3Fitem rdfs%3Alabel %3Fen_label . filter(LANG(%3Fen_label) %3D "en")}
  optional {%3Fitem rdfs%3Alabel %3Fitem_label}
} group by %3Fitem

https://github.com/alemela/wiki-needs-pictures/issues/20

I believe there's room in the UI for more data anyway. Some properties are more useful than others for identifying an object. Here are a few suggestions:
*Label (if present; if not, try to find a label in a different language, or even resort to an Interwiki link)
*P21 (instance of, if present)
*P361 (part of, if present)
*P527 (has part, if present)
*P462 (color, if present)
*P465 (hex color, if present, perhaps displayed as a colored area on screen)
In the unlikely event that all these properties are present, maybe drop the least important ones. Or maybe just make more room vertically on the screen?

Thanks for the feedback, good ideas!
Note: Room in the UI is not a big problem. To get more space, when the item is clicked, a "details view" could open containing as many details as we want (Wikipedia article in a WebView frame, Wikidata properties in another tab, links to various map and streetview-type services, maybe even nearby existing Commons images, etc)

@whym You will probably be interested in #289. I have found that SPARQL wikibase:box is much faster than AROUND. Let's continue the discussion over there.

This should have been fixed, yeah?

Yes, this is fixed!
I created a much lower-priority enhancement for the details: #729


Error : arameter specified as non-null is null: method com.apollographql.apollo.compiler.DeprecatedPackageNameProvider., parameter

Summary
Task :fantasy:generateLiveDebugApolloClasses FAILED
FAILURE: Build failed with an exception.

What went wrong:
Execution failed for task ':fantasy:generateLiveDebugApolloClasses'.

Parameter specified as non-null is null: method com.apollographql.apollo.compiler.DeprecatedPackageNameProvider., parameter schemaPackageName

Description
I am getting above error while generating apollo graph ql query
Version
Version 1.2.2

@anshulagarwal06 what is the layout of your graphql and schema files ? It should be something like this:
src/main/graphql/com/example/query.graphql
src/main/graphql/com/example/schema.json

Thanks @martinbonnin .
It solved this issue


Add mappings for gz.msgs.AirSpeedSensor and gz.msgs.Altimeter

Desired behavior
Provide mappings for sensor data:

gz.msgs.AirSpeedSensor
gz.msgs.Altimeter

Alternatives considered

NA.

Implementation suggestion
The main issue is which ROS message type to target as these messages do not have a corresponding message in sensor_msgs.
Additional context
Would be happy to submit a PR for this feature request once a suitable ROS message type is agree upon.

We've been creating our own ROS messages when a compatible message type is not available in the ROS ecosystem (see https://github.com/gazebosim/ros_gz/tree/ros2/ros_gz_interfaces). Can we do the same here?

Feel free to add me as a reviewer @srmainwaring

SensorNoise msg work in progress : https://github.com/gazebosim/ros_gz/pull/417

Just for the sake of documentation: It seems that the Air Speed sensor msgs only exists in gz_msgs 9+. Since the current stable version of ros_gz is using Fortress and therefore gz_msgs version 7, there is no message to bridge atm.


MSVC compatibility

As discussed in #8.
This should allow compiling lzfse with MSVC 2015. The CLI tool is able to compress and extract the few test files I used.

Jørgen, I tested your changes compile and work on macOS (yes, they do).
How do I build this on a PC with VS Community 2015?
NMAKE complains about the Makefile. Maybe we could provide a Solution? (or is it still called a Solution? I didn't touch VS in the last 5 years :-)

I think VS solution files can become a bit of an update nightmare for projects that are not using VS for development.
I added a commit that fixes building as a dll, so CMake can be used both to generate VS solution files and NMake makefiles. For instance, here I run:
mkdir build
cd build
cmake ..

and then either open the generated solution in the IDE, or build it with cmake --build . --config Release (which calls MSBuild for MSVC).

Excellent. I'll try it this evening. Thanks.

OK, it works, thanks again.


docker-containers: More container options, and tweaks to launch logic

Extends #55179
Motivation for this change
I needed to be able to set some extra flags for my personal server, and instead of adding loads of extra cruft to the extraFlags field, I decided to just add new options for them.
The options I have added are

devices (for device nodes like /dev/dvb)
hostname (for when you really need to change the container's internal hostname)
labels (for labelling containers, especially useful with træfik's docker mode)
network (for explicitely defining the primary network to join, see below)

I'm open to suggestions as to whether some of these should be done in a different way, especially with regards to whether devices should be an attribute set (though if that's the case, should other similars like volumes change as well?).
I've also added some changes to how the container is launched. Previously, systemd called docker run --rm, which pulls the image if it doesn't already exist, creates the container, starts it (attached to stdout), then removes it when the container closes.
With my tweaked logic, docker pull and docker create are now ExecStartPre steps, and docker start -n actually launches the container. I feel this is better for a couple of reasons:

the ExecStart command does one thing and one thing alone, launching the container
I was experimenting with changes to allow nix-defined software networks, and doing it this way around lets us inject other commands between container creation and container launch, which is mandatory to support this - docker only lets you join containers to extra networks by doing docker network connect after the container has been initialised, not while you're creating it. (I'm not ready to commit this support yet, fwiw)

Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nix-review --run "nix-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Assured whether relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

I would very much like to see this PR go forward. Is there something in particular blocking the merge?


[RFE] update nftables and ship systemd unit

Current situation
We currently ship nftables-0.9.9 and no systemd unit to automatically apply rules at boot.
Gentoo has nftables-1.0.5
Impact
Harder than necessary to enable nftables during boot.
Ideal future situation
nftables systemd unit part of flatcar image.
Implementation options
Update nftables ebuild in coreos-overlay (while checking which downstream changes are still necessary).
Additional information

Thanks. The systemd unit topic is interesting, I guess we could try to be close to the workflow we have for iptables config files and the Gentoo systemd unit looks like it fits well - if Flatcar follows the Gentoo way we could redirect to the Gentoo docs instead of writing own own docs.
Just for reference, a very different way of configuring nftables can be found on Fedora:
[Unit]
Description=Netfilter Tables
Documentation=man:nft(8)
Wants=network-pre.target
Before=network-pre.target

[Service]
Type=oneshot
ProtectSystem=full
ProtectHome=true
ExecStart=/sbin/nft -f /etc/sysconfig/nftables.conf
ExecReload=/sbin/nft 'flush ruleset; include "/etc/sysconfig/nftables.conf";'
ExecStop=/sbin/nft flush ruleset
RemainAfterExit=yes

[Install]
WantedBy=multi-user.target

The /etc/sysconfig/ file includes /etc/nftables/main.nft and both the service and the inclusion of the main.nft are disabled by default on my machine.


where are dreambooth fast models saved?

where will it be saved when i choose to save every 500 steps? thanks

directly in your gdrive

From memory, while it's training the models are output in logs/<foldername>


Error on trying to log in

/Users/aaron/Projects/discord-server-list/js-bot/node_modules/discord.js/lib/Client.js:67
nce=_ref13;var user=self.getUser("id",presence.user.id);user.status = presence
                                                                    ^
TypeError: Cannot set property 'status' of null
    at Client.addServer (/Users/aaron/Projects/discord-server-list/js-bot/node_modules/discord.js/lib/Client.js:67:1249)
    at WebSocket.websocket.onmessage (/Users/aaron/Projects/discord-server-list/js-bot/node_modules/discord.js/lib/Client.js:41:425)
    at WebSocket.onMessage (/Users/aaron/Projects/discord-server-list/js-bot/node_modules/ws/lib/WebSocket.js:414:14)
    at WebSocket.emit (events.js:110:17)
    at Receiver.ontext (/Users/aaron/Projects/discord-server-list/js-bot/node_modules/ws/lib/WebSocket.js:797:10)
    at /Users/aaron/Projects/discord-server-list/js-bot/node_modules/ws/lib/Receiver.js:473:18
    at Receiver.applyExtensions (/Users/aaron/Projects/discord-server-list/js-bot/node_modules/ws/lib/Receiver.js:360:5)
    at /Users/aaron/Projects/discord-server-list/js-bot/node_modules/ws/lib/Receiver.js:462:14
    at Receiver.flush (/Users/aaron/Projects/discord-server-list/js-bot/node_modules/ws/lib/Receiver.js:336:3)
    at Receiver.opcodes.1.finish (/Users/aaron/Projects/discord-server-list/js-bot/node_modules/ws/lib/Receiver.js:478:12)

Not sure what's happening

Not really sure myself what is going on here, but all the issues lingering in 4.1.1 and below are being fixed in version 5.0.0, which can be found in the rewrite branch! It's currently undocumented, but I think all of the features are present. If you need help, feel free to ask!


V 1.0.13 It's not working

V 1.0.13 is not converting docx to pdf.

Please check https://github.com/VuongVu/word2pdf/issues/2

Still have same issue.

Still facing the same issue

This is unfortunate but the Owner of the package is web scrapping a website to do this, I spoke with the website owner and they're not in agreement, I wouldn't recommend using this package.
This one is a paying service for over 1000 docs. It's relatively cheap for around 9$ a month for 20K documents, We're using it in production in my company. And also, I'm the guy maintaining this thing. so should be
https://www.npmjs.com/package/iva-converter


Error when transcribing

Here it is:
UnboundLocalError: local variable 'PL_out' referenced before assignment
I was running the Colab notebook only changing the video URL to a google drive link.

hey, thanks for reporting that! Sorry, that error is somewhat vague. basically, nothing was actually transcribed because it (likely) didn't find any videos to transcribe. Currently no error is thrown when vid2cleantxt tries to transcribe a directory and finds nothing, but UnboundLocalError: local variable 'PL_out' referenced before assignment is thrown during post-processing (PL_out doesn't exist because nothing was transcribed)
core problem/solution

the vid2cleantxt notebook currently uses wget  to load videos. in !wget -O $local_path $url_to_video to download a video. this does not work for google drive links
instead, you probably want to use the gdown command (see the gdown repo. note that this requires you to know/figure out the drive url ID and make that file have the permissions "anyone with the link can view"
gdown comes already installed on colab so you don't need to do anything to load it

example:

I want to download this video on my drive with URL of https://drive.google.com/file/d/1c-VJfq-qNSy8DQaxkx_yiopGidxhauGG/view?usp=sharing
the ID is after /d/: 1c-VJfq-qNSy8DQaxkx_yiopGidxhauGG

in Colab:
drive_id = "1c-VJfq-qNSy8DQaxkx_yiopGidxhauGG"
!gdown -O . $drive_id

so basically replace !wget -O $local_path $url_to_video with the above (except for your file) and it should work. Outside of that, you can see this medium post or this stack overflow for other ways of loading video files to Colab

hey! let me know if the above solved your problem or if you need further help. Otherwise, I'll close this issue in a few days :)


Save publish-topics historically

Much like a browser window with URLs, being able to quickly recall and publish to a past topic name instead of having to re-type every time would be very useful. Maybe a combo drop-down text box?

Hi, thanks for your support for MQTT X. This is a good suggestion worth discussing, there is already a plan that includes this feature #428 . The specific implementation may need to be redesigned, I will complete it as soon as possible.

Hi, thanks for your support for MQTT X. This is a good suggestion worth discussing, there is already a plan that includes this feature #428 . The specific implementation may need to be redesigned, I will complete it as soon as possible.

@zyphlar Hi, the next version will have support for the quick selection of historical records.


Drawing a circuit with idle_wires=False causes the circuit to break in future draw/qpy events

Environment

Qiskit Terra version: main
Python version: 3.9.1
Operating system: OSX

What is happening?
When drawing a circuit with circuit.draw(idle_wires=False) the circuit is somehow mutated to fail on future drawing or qpy serialization events.
How can we reproduce the issue?
Using the circuit below. Message for QPY file.
from qiskit import qpy

with open('test.qpy', 'wb') as fd:
    qpy.dump(transpiled_bit_code_circuit, fd)

with open('test.qpy', 'rb') as fd:
    new_qc = qpy.load(fd)[0]

new_qc.draw(idle_wires=False)
new_qc.draw(idle_wires=False)

What should happen?
Circuit should draw twice.
Any suggestions?
No response

The immediate cause of this is the circuit drawer doing qubits = circuit.qubits and then mutating its qubits list when deciding what to display.  The root cause is that QuantumCircuit exposes its private, mutable data store (_qubits: List[Qubit]) directly via the qubits property, which is what allows this kind of error to occur.
As a simpler example that's effectively the same behaviour:
import qiskit
qc = qiskit.QuantumCircuit(2)
print(qc.num_qubits)  # 2
qc.draw(idle_wires=False)
print(qc.num_qubits)  # 0

I can squash this symptom, but fixing the QuantumCircuit interface without performance degradations or backwards-compatibility breaks is rather harder and may not be practically possible right now.


Maybe we need cyclic component dependencies?

Currently, as @zbuc points out, the staking crate depends on a lot of functionality of the shielded pool crate, to mint new notes, etc. But this means, because crates cannot be cyclic in dependency, that the shielded pool cannot depend on anything defined in the staking crate. This is a problem when implementing quarantining, as the rules for quarantining require querying the current state of validators, which is functionality defined (rightfully!) in the staking crate. This leads to a sadness.
Here are some ways out of the sadness:

We could replicate the shielded pool functionality needed in the staking crate (bad, lots to replicate).
We could replicate the staking functionality needed in the shielded pool crate (slightly less bad, just need to make a few queries, but we can't use any domain types).
We could move the domain types for the validator state and bonding state into a separate crate, upon which both shielded pool and staking depend.
We could move the required functionality of the shielded pool for the staking crate into a separate crate, upon which both shielded pool and staking depend (probably bad, not very sensible division of concerns).
We could scrap the idea of having separate crates for separation of component concerns, admit that cyclicity is necessary to enable code reuse when components need to refer to each others' states, and enforce modularity with modules rather than crates, in one big component crate with submodules.

Of these, I think that (5) is likely the best solution, especially because we'll likely end up needing to do more (1..=4) style hacks as we add more components. However, the downside of (5) is that it conflicts with everything else that is in flight, because it requires refactoring all of the components simultaneously. Perhaps this should happen over the weekend (I volunteer as tribute).
This is a blocker for #960, which is the very-in-progress work on #588.

If we do (5), where should we put all of the components?
One option would be to have a crate that depends on the current component crate and has all of the component implementations.  Another option would be to use the component crate itself; we could have ::shielded_pool, ::stake, ::ibc modules with the current contents of those crates.
Another point to consider is whether this is an opportunity to repair some of the awkwardness with the transaction crate, which uses only the proto versions of some types rather than the domain types, to work around this kind of cyclicity issue.  On the other hand, perhaps it's better to keep the transaction code separate, so that, e.g., a custody service doesn't need to import the entire application, just to be able to compute auth hashes of a transaction plan (e.g., if we wanted to compile that code to wasm to run in a browser extension).
Whatever we do could probably also solve #927 at the same time.

I think using the current component crate would be sensible (your latter option). I agree that keeping the transaction code in a separate crate is good, especially because wasm compilation may not be able to handle all of pd, but it could likely handle whatever's in there. Do you think that resolving #927 would look like putting it in the component crate, per this plan?


Fix theming of material preview icons

Fixes to properly updates these icons at theme changing:

Would like to see this bug fixed. Will see what I can do to review.


No photos or notes

[-] Fixed Don't offer to prefill crew if previous report didn't include any crew
[-] Fixed title "No photos or notes" when amber exist.
[-] Fixed Do not bring over notes for vessel information
[-] Fixed Do not bring over notes for crew information
Fixes #271, #272, #273, #277

 Review PRs


Remove a few redundant values from the deployment manifest.

AFAICT, these are all defaults anyway and not needed to be spelled out specifically. Especially the scheduler bit breaks on my local dev environment.

@davidor I'm getting pending pods because of constraints that cannot be fulfilled or something. Using Docker for Mac.

@davidor nope no issue at all. But if those are "defaults" it should be safe™ to get rid of them.


Webpack compile without next dependency

Remove the Next.js dependency for a compile that'll run on shark tower.

It looks good


Flashbots tracing improvement, interval period lowered

Improved tracing of the tx submit and cancel functions.
Interval period for simulation lowered from 10 to 5 sec.
Gas price comparison made more strict.
Test plan:

[x] Make a manual tx on mainnet and make sure tx is mined

Codecov Report

Merging #1356 (1da92fd) into main (582e705) will decrease coverage by 0.03%.
The diff coverage is 0.00%.

@@            Coverage Diff             @@
##             main    #1356      +/-   ##
==========================================
- Coverage   66.87%   66.84%   -0.04%
==========================================
  Files         140      140
  Lines       29632    29641       +9
==========================================
- Hits        19816    19813       -3
- Misses       9816     9828      +12

Changes in the API file seem unrelated to the description. Is there any reason you didn't share the test plan transaction here?

Hey Ben, I've added the transaction in the test plan.
Changes in the API file are related to the tracing improvement (error handling), meaning I've added multiple error messages that are traced on the caller side of these functions.


User can add a Profile Photo

Add a feature so that the user can add a profile photo of his/her choice.

@sabhisharma-ise I understand what has to be done here, please assign me this issue under GSSOC"23.


Is it working on Windows ?

Hi,
Your job is amazing.
Do you think it could be possible to have your software working on Windows ?

Hi,
Thank you for your answer.
So, if I replace SVCamera.cpp by my own, it would be possible to have it working on Windows ?
Great, I'll try.

Hi, Thank you for your answer. So, if I replace SVCamera.cpp by my own, it would be possible to have it working on Windows ? Great, I'll try.

Mmm... That's not enough for build on Windows. So today I have pushed some changes and removed Linux system signals(they were not needed). If you want build this on Windows:

You must change SVCamera (read data from camera) as I mentioned earlier.
You must edit CMakeLists.txt file. I set absolute path for GLFW and GLES libraries in dir("3dparty") of my project. Edit this path to your or just use find_package cmake call.
After these two steps it should build.

OK. I made it working on Windows 10.
I had to add glew library to make opengl driver works.
Now I will rewrite the SVCamera class.
Could you tell me the procedure to generate new camera calibration files ?

OK. I made it working on Windows 10. I had to add glew library to make opengl driver works. Now I will rewrite the SVCamera class. I forked at https://github.com/psykokwak-com/Surround-View
Could you tell me the procedure to generate new camera calibration files ?

So, the project has two directories with calibration data.
First it's just calibration intrinsic parameters of cameras - focal length, optical centers and distortions -> they are stored in calibrationData directory. You do procedure calibration with some tools like OpenCV calib or Matlab calibration toolbox. Some notes about calibration: for different image resolution you will have different parameters that's important. Ok, You calibrate cameras and save them into files.
Then calibrate the extrinsic parameters. These extrinsic parameters relate to the rotation and translation of the cameras with each others. To calculate the parameters, I used the feature matching and bundle adjustment methods. You can find them in SVAutoCalib module. This module have full extrinsic calibration process and saved into files. Files you can find into "camparamters" directory. The files also have another intrinsic parameters, because parameters must recalibrated after distortion correction. These all can be done in SVAutoCalib module. Also method "init" in SVStitcher class can complete full setup process(check code) just pass your data from cameras.
One more important note - I have 4 cameras, but I divide last camera image into two. Because good calibration of last with first camera images is pretty hard and the easy way to avoid this and just divide one image into two and align them later :)
P.S.
Some notes: If you will use SVAutoCalib module the extrinsic calibration may take some times, because that's depends of feature matching process and therefore your overlapping region of the cameras. In the project I used ORB feature detection, but I don't recommend this algorithm, cause many outliers will be generated. Use better SIFT or BRISK. ORB is good if you wanna use autocalibration cameras on runtime when you want refine camera parameters.
Also, you can use Essential matrix computation cameras with each other. And just mutliply them for get parameters, this must work, I guess. But bundle adjustment everything is needed for get good quality stitching images, because other methods give a rough parameters computation.
So, I hope that's help you)


The installation complete dialog will hang the installation script from exiting in powershell blocking unattended installation.

What's the problem?
I have been trying to install flare-vm automatically but this dialog is causing an issue. Unlike other output using Write-Host, this $form.ShowDialog() is expecting a user to click the button before the powershell script can exit successfully.
This is painful. Please fix this
Steps to Reproduce
Any successful installation will end up with the final dialog. -noGui argument is not honoured here.
Environment
AWS EC2
10.0.20348
5.1.20348.2227
2.2.2
3.0.3
Additional Information
No response
Detected by test suite
No

Duplicate of https://github.com/mandiant/VM-Packages/issues/837


Feature/lavaut m ccheat

Last version of the singleHit module to identify isolated blips as radiologicals for calibration.
I've add a generator tag to hit matching in order to evaluate purity and efficiency of my analysis

Thank you for your comments,
I'have put so Loglevel condition before every std::cout and changed the fcl
For the  comment on the MCCheater I also deleted the non-used objects but the module is just an intermediate module to understand the cheater not to use at production levels

Okay, thanks for the commits and bug fixes.  I think you still have some GDLMs in there:
in protoduneana with your PR checked out:
grep -r -i gdlm *
verticaldrift/singlehit/runMCcheat_PDHD.fcl:services.Geometry.GDLM: "protodunehd_v6_refactored.gdml"
verticaldrift/singlehit/runMCcheat_PDVD.fcl:services.Geometry.GDLM: "protodunevd_v4_refactored.gdml"

Thank you, I fixe that now !

Is it possible to merge this PR soon? @tomjunk @aolivier23 ?

I'll try to get it into a new release today.  It seemed just about ready the last time I looked at it.  Taking a look at the changes before I commit to that.

trigger build with DUNE/protoduneana#34

:heavy_check_mark: CI build for LArSoft Succeeded on slf7 for e26:prof -- details available through the CI dashboard

:heavy_check_mark: CI build for LArSoft Succeeded on slf7 for c14:prof -- details available through the CI dashboard

:x: CI build for DUNE Failed at phase build DUNE on slf7 for e26:prof -- details available through the CI dashboard
:rotating_light: For more details about the failed phase, check the build DUNE phase logs
parent CI build details are available through the CI dashboard

:x: CI build for DUNE Failed at phase build DUNE on slf7 for c14:prof -- details available through the CI dashboard
:rotating_light: For more details about the failed phase, check the build DUNE phase logs
parent CI build details are available through the CI dashboard

Looks like I can fix the things that caused the build to fail.  Just an integer sign mismatch and a typo in a variable name.  Bear with me while I learn how to do this.  I don't think it needs any action from you.

thank you !  yes I made some modification on github today and I was planning to test to build it to see the errors on monday. I was not expecting you to merge today sorry.

@emilelavaut No problem.  Do you want me to wait until the next release to merge this pull request?  I'm going to cut a release today to match the new LArSoft version.  Sounds like the next release will be next Friday.

@aolivier23 @emilelavaut I may suggest waiting until next Friday as there is at least one change we are going to add (getting absolute timestamps for the clusters) which is relevant for charge -light matching. So we might as well wait, and maybe Emile will have a few more small changes he may want to add.

Yes next friday would be perfect for me !

this version of the code work well and have everything updated.
it has been test and it should be able to merge.

Thanks @emilelavaut .  I'm going to try to merge this PR in tomorrow afternoon.  Speak now if you want me to hold off please!

trigger build with dune/protoduneana#34

:heavy_check_mark: CI build for LArSoft Succeeded on slf7 for e26:prof -- details available through the CI dashboard

:heavy_check_mark: CI build for LArSoft Succeeded on slf7 for c14:prof -- details available through the CI dashboard

:x: CI build for DUNE Failed at phase build DUNE on slf7 for c14:prof -- details available through the CI dashboard
:rotating_light: For more details about the failed phase, check the build DUNE phase logs
parent CI build details are available through the CI dashboard

:x: CI build for DUNE Failed at phase build DUNE on slf7 for e26:prof -- details available through the CI dashboard
:rotating_light: For more details about the failed phase, check the build DUNE phase logs
parent CI build details are available through the CI dashboard


Problem with moving env's .json files

I take the <>.json file and transfer it to another machine's ~/.visdom/<>.json. And restart visdom in the new machine, it should work right? It doesn't.
Right now it shows the env but theres no plots/panes inside it. Its blank blue empty environment....
Would like a fast response. Thanks :)

Hi @skrish13, are you seeing any errors in your browser's javascript console or in the terminal you're running the server in? I'm not quite sure where the env contents are getting lost

I don't see any errors on the terminal. Not sure about javascript console. Opened the json file to check, it has all the contents...
One thing which i see now (and not before) is

"INFO:root:Application Started"

Earlier it was just simple "It's Alive!" (if i remember correctly? maybe I'm wrong)

It's likely on the javascript side if you're not seeing any server errors. Can you open the js console on the window you're using visdom in? You can get there using right click -> inspect element and then clicking console.

Yes, it says something like this. (For all the panes)

unrecognized command Object { title: "", i: 0, contentID: "3588a45b62d118", content: Object, command: "pane", type: "plot", id: "train_loss" }

And also this. with a cross on the left most side and highlighted in red (same as above)

GET http://<IP_ADDRESS>:8097/static/css/bootstrap.min.css.map

Ah okay I see the issue - I'll need to push a fix, but the command "pane" was deprecated in  99e675c41a4f95732ecdf355b125777ae3152be6 and I hadn't considered it might break cross-compatibility between versions. The new machine is definitely running a newer version of visdom than the old one. I'm going to push a fix that addresses this and restores backwards compatibility. In the meantime, if you replace every occurrence of command: "pane" with command: "window" in the .json file on the new machine (via find-replace) you should be able to see the contents properly. Sorry about the break!

Ah okay. Yes, the json was created with an older version on visdom. Both machines are on same (master) version only but.

Hey @JackUrb is it fixed? if not should i keep this issue open?

This is indeed fixed, thanks @skrish13 for noticing the issue in the first place


Shift parsing and command execution functionality to LogicManager class

Issue is closed with the merging of PR #84


Simplify API surface

Codecov Report

Merging #58 (7ff4b52) into next (2eab61c) will increase coverage by 25.73%.
The diff coverage is 100.00%.

@@             Coverage Diff             @@
##             next      #58       +/-   ##
===========================================
+ Coverage   35.37%   61.11%   +25.73%
===========================================
  Files          10        2        -8
  Lines         294      180      -114
  Branches       22       14        -8
===========================================
+ Hits          104      110        +6
+ Misses        190       70      -120

Impacted Files
Coverage Δ

...kages/electron-trpc/src/main/resolveIPCResponse.ts
77.06% <100.00%> (+3.66%)
:arrow_up:

...ackages/electron-trpc/src/main/createIPCHandler.ts

...kages/electron-trpc/src/main/exposeElectronTRPC.ts

packages/electron-trpc/src/main/index.ts

packages/electron-trpc/src/renderer/index.ts

packages/electron-trpc/src/renderer/ipcLink.ts

packages/electron-trpc/src/renderer/utils.ts

packages/electron-trpc/src/types.ts

packages/electron-trpc/src/main/utils.ts
36.61% <0.00%> (+2.81%)
:arrow_up:

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


Can't get  to work

trying to render a  doesn't work.
Also, I would love the code behind the demo being shown in the gif. I'm trying to build a simple dashboard like utility that will run multiple watch commands and show them side-by-side.
My first big problem is that all the text rendered by react-blessed is currently white. I'm not sure how to make colors from the output of various commands show up.
Second, I would like to use the  element from blessed sometimes, and that doesn't seem to work either.
Lastly, I'm still having trouble making any box scrollable. Any help on one or more of these issues will be very helpful. Thanks!
(Also React-blessed is amazing. Thanks for your work)

Hello @nmn.
The code running the thingy shown in the gif is here and is actually a dashboard for the sandcrawler spiders.
Concerning your output colors, are you using ANSI escape characters? If so, normally they should be rendered correctly. If you are using blessed color tags, be sure to pass a prop tags to true on the relevant blessed elements.

Second, I would like to use the element from blessed sometimes, and that doesn't seem to work either.

I am not sure I understand you there, can you develop a bit more, please?
Concerning the scrollable part, isn't the scrollable prop not working for you?
Be sure to check blessed's tests to see some fine examples.
Anyway, is your code available somewhere so I can help you better?

Sorry, typo in my issue, I tried using the terminal widget, but that errors out.
As for colors, ANSI escape characters don't seem to be working for me.
In any case, I'm gonna take a look at the sand crawler app and see if I can learn something.

Let me check that more thoroughly tomorrow. I guess you are working on this project?

Any update on this @nmn?


spike: ICS integration

Overview
Inorder to comeup with a config file directives for ICS chains, it would make sense to perform a spike to get ICS running in Starship

Since there can be many consumer chains for the same provider, we need to a way to define that in the config file. Here are a couple of ideas:
Option 1
Each consumer chain is defined in chains[], provider chain just runs the version of gaiad that has the provider
chains:
- name: cosmoshub-4
  type: cosmos ## initially we will be running interchain-security-provider
  numValidators: 4
- name: neutron-2
  type: neutron
  ics:  # if specified, no need to specify numValidators, since the validator set is created and run by validators of the provider
    enabled: true
    provider: cosmoshub-4

Option 2
Since the validator set of the consumer is same as the consumer, and the provider is supposed to run the nodes for the providers
chains:
- name: cosmoshub-4
  type: cosmos
  numValidators: 4
  ics:
    enabled: true              ## if true then will setup the chains such that consumer nodes are all setup and running
    consumers:                 ## will be similar to `.chains[]` but with some fields omitted
    - name: neutron-2
      type: neutron            ## chain of chain to run, same as `.chains[].type`
      image: <image>        ## optional override from type
      resources:
        ...
      ports:
        ...
    - name: stride-4
      type: stride

Note in the chain defination we will not create the IBC channels and ports. Those are supposed to be part of the relayer definations. The chains[] defination will create the proper genesis.json files, prepare the nodes and start the nodes without the IBC stuff.
Questions

How are the pods supposed to run? Are the consumer chain nodes supposed to run on the same pod as the provider chain ? Do we run it as sidecars?
Do we allow addition of consumer chains after the provider has been spun up?
How are relayers supposed to perform the initial setup between the chains?
How are the consumer chain addition proposals handled? and where? Run as either: a k8s job, init container on the consumer, side car action on provider triggered by consumer init-container.

Relayers
For ICS setup, relayers play a key role in setup. This is a design for how the config would look like.
Commands to run
The actual commands to run on the relayer are:
hermes create connection \
    --a-chain consumer \
    --a-client 07-tendermint-0 \  # this is the client on consumer chain
    --b-client 07-tendermint-0    # this is the client on the provider chain, in prod this is never 07-tendermint-0

hermes create channel \
    --a-chain consumer \
    --a-port consumer \
    --b-port provider \
    --order ordered \
    --channel-version 1 \
    --a-connection connection-0

Option 1: Implicit
relayers:
- name: cosmos-neutron
  type: hermes
  replicas: 1
  chains:
  - cosmoshub-4
  - neutron-2

If the chains specified have ics.enabled set to true, then we can assume that it is implicit to create the ics channels.
Option 2: Explicit
relayers:
- name: cosmos-neutron
  type: hermes
  replicas: 1
  chains:
  - cosmoshub-4
  - neutron-2
  ics:
    enabled: true

For chain initialization, here are the steps: https://github.com/hyphacoop/ics-testnets/blob/main/images/consumer-start-process.svg
Since ICS initialization requires steps on the consumer to be running steps on the provider. This can be done as part of init container of the ICS chain.
consumer-chain-genesis:
  initContainer:
    - init-genesis: # same as current genesis initialization
    - init-ics: # will perform various ICS specific tests
      steps:
        - create address on provider for ics initialization: use provider faucet
        - submit proposal on provider
        - pass proposal on provider
        - fetch ccv specific info from
    - init-priv-keys:
      steps:
        - fetch private keys of the provider from exposer

For the rest of the validators of the consumer chain, we will have similar steps.
consumer-chain-validator-i:
  initContainers:
    - init-validator: # same as current initialization
    - init-priv-keys:
      steps:
        - fetch private keys of the provider from exposer

Note: So far, provider chain does not need to know anything about the consumers.


feat: allow configuring genesis block number from ethereum options

resolves #2919
Signed-off-by: Chris Lahaye<EMAIL_ADDRESS>

This commit is suppose to add better support for Substrate Frontier, an Ethereum compatibility layer for Substrate, in particular for chains where compatibility was add after block zero. Using such chains with graph-node does not work as the genesis block cannot be queried because they are hard-coded to be block zero. This commit allows configuring the genesis block number at start-up using the existing ethereum options.
Old syntax
NETWORK_NAME:[CAPABILITIES]:URL
New syntax
NETWORK_NAME:[CAPABILITIES]:URL[,GENESIS_BLOCK_NUMBER]
I understand that this is probably a long shot as the genesis block being block zero is a pretty fundamental thing, and therefore, probably hard-coded and implied widely across the project.
https://github.com/graphprotocol/graph-node/blob/6f4adda0220cb7a9f24a801db066f92a00a0a81b/core/src/subgraph/registrar.rs#L455 https://github.com/graphprotocol/graph-node/blob/6f4adda0220cb7a9f24a801db066f92a00a0a81b/graph/src/components/ethereum/types.rs#L43 https://github.com/graphprotocol/graph-node/blob/6f4adda0220cb7a9f24a801db066f92a00a0a81b/chain/ethereum/src/data_source.rs#L761
I must admit that my knowledge about this project and rust is pretty limited. I would like to collaborate and work on this feature, although I would require some direction. I will just leave this here and hope to receive some replies on how to approach this.

Thanks @ChrisLahaye! @leoyvens interested in your take on this approach - I wonder if this shouldn't be chain agnostic?

This is not relevant with firehose, since it already doesn't assume that the genesis block is 0.
My only issue is with where to put this config, I don't think we want to expand on the CLI config. This could fit into the config file format, under the provider.

@azf20 On other chain that uses Firehose, 0 always means give me genesis block from Firehose perspective, so tweaking it in graph-node is not required. Although something of interest where knowing the genesis block would be interesting would be to validate that the manifest's start block is always >= genesis block. But this could be provided by Firehose endpoint directly, Dan from Figment proposed adding such endpoint to the Firehose service (to know the genesis block, latest block known block) and this could be used instead of specifying it at the command line per network.
@ChrisLahaye There will be some other places where genesis block is implicitly required. For example when starting a subgraph, we do https://github.com/graphprotocol/graph-node/blob/master/core%2Fsrc%2Fsubgraph%2Fregistrar.rs#L455-L465.
This would need to be adapter also, because if the start_block is specified on the custom block number, it means we would not find the block_number - 1.
There might be other places where it will need to be handled, maybe when validating

@maoueh Correct, I referred to the places that I could find in my previous comment. Most of them don't have access to the chain struct that I used to store the genesis block number. I first want to gather some feedback before passing down various structs and updating function parameters. First we should decide whether this is worth pursuing, if so, then I will start updating these places one by one.


add unit test check as part of pull requests via pipelines as code

generally, redhat-appstudio projects have done basic make type invocations via github actions, and triggered e2e tests via openshift/release prow integrations

but I'll wait for talking to @adambkaplan before we enable actions for this repo in the same fashion that we have enabled the other redhat-appstudio repos

/ok-to-test

the unit test is running / passing @adambkaplan
IMO what I had to do here speaks to some of the eat our own dogfood gaps we talked about in the retrospective today


Floating the System preferences window?

Is this possible? I have not been able to properly add a rule to float the system preferences window.

yabai -m rule --add app="^System Preferences$" manage=off

Thank you!


Calyptos issue #77 & #75: fix for not requiring default zookeeper port and server iteration

Fixes Calyptos Issue #77, backwards compatible with specifying optional port 2181
Now defaults to 2181 which isn't specified in the server definition

thanks @dmccue !!!

Excellent thanks for quick turnaround!


add map function to haskell section

Add map function to haskell section of guide.freecodecamp.org

[x] My pull request has a descriptive title (not a vague title like Update index.md)
[x] I have read freeCodeCamp's contribution guidelines.
[x] My pull request targets the master branch of freeCodeCamp.
[x] None of my changes are plagiarized from another source without proper attribution.
[x] My article does not contain shortened URLs or affiliate links.

If your pull request closes a GitHub issue, replace the XXXXX below with the issue number.
Closes #XXXXX

Closed and Reopened this PR in an attempt to attempt to break out of the Travis build pending status.

Why is this part in there...
import Data.Char (toLower) # to get the toLower
map toLower "HELLO WORLD HASKELL RULEZ!"
-- "hello world haskell rulez!"

?

@moT01 I added it as an example of the map function.


Cannot work on some android devices?

This is a great library, and this works well on my android device and ios device, but it is not working on some of my friends android devices (the whole program died when meet the function snabbt). Can this be fixed? Thank you.

Hi,
Do you have any device-info? What versions of android and what brand?

I've tested 3 devices. My htc e8 (4.4.2) works well, Samsung S4 (4.3) and Samsung Note 2 (4.1) doesn't work.

Oh, that's not good.
What version of snabbt are you using?

It should be the latest version.. I started using snabbt last week. Do you have an idea what cause this problem?

I haven't seen this issues before so there might be something in the later releases. Do you think you could try with a previous release? 0.4.0 perhaps?
I'm pretty swamped at the moment so I won't have time to look at it until after the weekend.

@daniel-lundin I tried 0.4.0 and there's another problem.
snabbt(elem, {
    fromScale: [0.8, 0.8],
    scale: [1, 1],
    easing: "spring"
});

"fromScale" worked, but the animation didn't run.

Ran into the same issue in the stock Android browser running on Samsung S3 w/ 4.4.2 and HTC One X+ w/ 4.1.1. Didn't do much investigation, but using a polyfill for requestAnimationFrame corrected the issue.  The performance of the animations took a big hit with this method.

@lovenick Can you please show me how? I'm new to javascript... Thanks a lot.

Place the gist below in your JS before any call to Snabbt.
https://gist.github.com/paulirish/1579671
The code will shim the window.requestAnimationFrame method if not available natively.

@lovenick  It works, thank you.

I added a polyfill for requestAnimationFrame in 0.5.2
Please reopen if it doesn't solve the problem


Redeploy unit in place

It would be quite nice to be able to replace an existing unit in one go, if a change must be made, preserving its location.

fleetctl submit some.unit.service
fleetctl run some.unit.service
edit some.unit.service
fleetctl reload some.unit.service

Fleet should replace the unit conf in-place, stop the running unit, and restart it using the new conf.

This should be easy to do now. We could accept a new unit file using something like fleetctl --overwrite start foo.service, which would trigger the reconciler on a given machine to tear down the existing unit based on a hash mismatch.

:+1:

which fleet version has the --overwrite option?

Hi Brian,
Is this fix available now?
On Fri, May 1, 2015 at 9:48 AM, Brian Waldon<EMAIL_ADDRESS>wrote:

This should be easy to do now. We could accept a new unit file using
something like fleetctl --overwrite start foo.service, which would
trigger the reconciler on a given machine to tear down the existing unit
based on a hash mismatch.
—
Reply to this email directly or view it on GitHub
https://github.com/coreos/fleet/issues/760#issuecomment-98138284.

@Vish0007 no code has been written to support this

+1

+1

+1

+1

+1

+1

+1

+1 @bcwaldon Whats the ETA for this?

+1

+1

+1 And what about a rolling update of Global=true units?

dup #1295

Hi new replace functionality is in this new PR #1509 which needs testing... there are many corner cases... if you guys are still on it.

@kayrus why have you closed this issue? The PR is not in yet...

Here's a possible workaround for reloading a service across the fleet. Note that this isn't really tested, so it's more theoretical than anything:
# Get the IP address of each host running <name>.service, then ssh into each one
# and reload it using systemctl.
for ADDR in $(fleetctl list-units --no-legend | grep <name>.service | awk '{ print $2 }' | awk --field-separator '/' '{ print $2 }'); do
  ssh $ADDR systemctl reload <name>.service
done

Another approach:
# Same idea, but using machine id instead of IP address. Not sure if it supports
# the same syntax as bare `ssh` for running a command on the server and exiting.
for MACHINE in $(fleetctl list-units --full --no-legend | grep website.service | awk '{ print $2 }' | awk --field-separator '/' '{ print $1 }'); do
  fleetctl ssh $MACHINE systemctl reload <name>.service
done


cluster: handle unready member

Submitting early thoughts for feedback.
Problem statement: We could fail in MemberAdd() due to context deadline
exceeded and thus not creating related pod/service. But we could have
actually added the member. Then we would end up infinitely looping on
updateMembers() with not ready member error.
The fix is to have some intelligence when encountering unready member.
We would check the running pods and see if the member is in running
pods:

If yes, we will take this as really not ready and back off
otherwise, we will remove this member from membership

@xiang90
I played with this approach a bit. It has another problem: for example, if I have running members less than a quorum, it will also infinitely loop, which we don't want to see and should be handled in reconcile.

@xiang90
After implementing this, I have a better idea.
I think we can actually make use of PeerURL to construct the membership. We let reconcile handle the rest. That's much simpler and safer.


documentation

In addition to the java language also provides other language interface, there are detailed interface documentation does not

@wanguanfu Thank you for reaching out.
Could you, please, explain what you would like to accomplish? Are you interested in extending Brooklin using a programming language other than Java or create Brooklin datastreams using a program written in a different programming language?

Closed due to inactivity.


Add body to LoggingClientBuilder

While we can turn on client dumps, it is very user unfriendly. I'm almost afraid to recommend it because it is too low-level.
When we transitioned from okhttp to armeria, we had to copy/paste a large amount of code to log request/response bodies.. now I think we will need to do that again in zipkin-gcp because the user is having trouble figuring out what is wrong despite having stats. https://github.com/openzipkin/zipkin-gcp/issues/133
Can we please upstream this feature from Zipkin?
https://github.com/openzipkin/zipkin/blob/master/zipkin-server/src/main/java/zipkin2/server/internal/elasticsearch/RawContentLoggingClient.java

I wonder if you had a chance to play with request/response content previewer:
WebClient.builder()
         .contentPreview(128) // Previews the first 128 bytes
         ...
         .build();

I remember now that this didn't work because we use gzip encoding. So possibly can be duplicate of #2189

Yes. Closing in favor of #2189


Custom dataset training

Hi
I want to retrain the network using my own dataset, how can I get the .txt file in splits（）

Same question here! How can I train from RGB/depth map frames?

@antithing did you find the training script for it the Depth Anything v1?


Adding support for mixpanel tracking

I'm not sure whether this is something that @EmielH you are interested in.
Feel free not to accept this MR :)
Mixpanel: https://mixpanel.com
Inspired by hauke96/hugo-theme-hamburg
https://github.com/hauke96/hugo-theme-hamburg/blob/52bbf31e8f0b4ae2d0814e4ebef555a4d2c66920/layouts/partials/footer.html

My apologies for the late reply! I've never heard of Mixpanel before; is it widely used?

@EmielH I'm not sure, I have come across it in my previous jobs and now I found it when I was researching analytics that wouldn't share data with other companies and would be free to use for personal blog.
As I mentioned in the PR description, I'm perfectly OK with this not being merged if you'd like to keep the theme clean :)

Hi @viktomas, I've given it some thought and I'd like to keep the theme clean. If I add one tracking option, I need to add them all, and I don't think I have the time to keep them all up to date. I think the theme offers good support for tracking code, e.g. using the footer partial.
I do really appreciate the effort. Thank you very much for submitting this PR! If you have more suggestions, feel free to let me know, and I hope I'll be able to take a look at them a bit quicker than I have been able to with this PR. 🙂


Tutorial maker-error

-The program was working "good" and then I had problems with the creation of the turorial's window where the arrows can be seen.
-I did not have this problem and then it appeared. I saw the error in the python console and this error was in it.
Python 3.9.10 (main, Dec 12 2023, 01:33:02)
[Clang 14.0.6 (https://github.com/tru/llvm-release-build 686807a176470032c208f2 on darwin

[Qt] Populating font family aliases took 535 ms. Replace uses of missing font family ".AppleSystemUIFont" with one that exists to avoid this cost.
/Applications/Slicer.app/Contents/bin/Python/slicer/util.py:2771: UserWarning: already has observer
warn("already has observer")
[VTK] Warning: In vtkMRMLCameraNode.cxx, line 414
[VTK] vtkMRMLCameraNode (0x7fd604ef8f20): vtkMRMLCameraNode::SetActiveTag() is deprecated. Use vtkMRMLCameraNode::SetLayoutName() instead.
[VTK] Warning: In vtkMRMLCameraNode.cxx, line 414
[VTK] vtkMRMLCameraNode (0x7fd606c4fc50): vtkMRMLCameraNode::SetActiveTag() is deprecated. Use vtkMRMLCameraNode::SetLayoutName() instead.
[VTK] Warning: In vtkMRMLCameraNode.cxx, line 414
[VTK] vtkMRMLCameraNode (0x7fd606d6a320): vtkMRMLCameraNode::SetActiveTag() is deprecated. Use vtkMRMLCameraNode::SetLayoutName() instead.
goodbye, world!
test
test
test
test
test
directory_path: /Users/valeriavaldes/Downloads/TutorialMaker-main/TutorialMaker/Outputs/Raw
An unexpected error occurred while opening file '/Users/valeriavaldes/Downloads/TutorialMaker-main/TutorialMaker/Outputs/Raw/0/0.png': 'ascii' codec can't decode byte 0xc3 in position 26570: ordinal not in range(128)
Traceback (most recent call last):
File "/Users/valeriavaldes/Downloads/TutorialMaker-main/TutorialMaker/TutorialMaker.py", line 154, in annotateButton
self.logic.Annotate(self.__selectedTutorial)
File "/Users/valeriavaldes/Downloads/TutorialMaker-main/TutorialMaker/TutorialMaker.py", line 223, in Annotate
Annotator.open_json_file(os.path.dirname(slicer.util.modulePath("TutorialMaker")) + "/Outputs/Raw/Tutorial.json")
File "/Users/valeriavaldes/Downloads/TutorialMaker-main/TutorialMaker/Lib/TutorialGUI.py", line 281, in open_json_file
self.load_all_images(data, directory_path)
File "/Users/valeriavaldes/Downloads/TutorialMaker-main/TutorialMaker/Lib/TutorialGUI.py", line 354, in load_all_images
self.firts_screen()
File "/Users/valeriavaldes/Downloads/TutorialMaker-main/TutorialMaker/Lib/TutorialGUI.py", line 358, in firts_screen
path = self.images_list[self.scree_prev]
IndexError: list index out of range

@vmms It's this a MAC related problem on the Annotator tool? We're investigating this one.

The exception
An unexpected error occurred while opening file '/Users/valeriavaldes/Downloads/TutorialMaker-main/TutorialMaker/Outputs/Raw/0/0.png': 'ascii' codec can't decode byte 0xc3 in position 26570: ordinal not in range(128)
Traceback (most recent call last):

Is misleading because it may not happen when the image itself is loaded, the exception handling code looks like this:
except Exception as e:
print(f"An unexpected error occurred while opening file '{path_image}': {str(e)}")
exception_occurred = True
break

So it always concatenates the image path to the error message.
The try block looks like this
try:
with open(path_meta, 'r') as file:
content = file.read()
image = qt.QImage(path_image)

So it also loads the JSON file content as well as the image, so the exception is most likely happening when it loads the JSON file, and it is a encoding problem that for now I was not able to replicate.

The error is due to the fact that it cannot read the file due to the characters it contains and therefore it left the vectors empty and the error came out that it wanted to go to a position out of range. The solution was to open the file as UTF-8
try:                     with open(path_meta, 'r', encoding='utf-8') as file:                         content = file.read()

@vmms We need Valeria to try to download the extension and see if the error persists. I already change the lines to read the file correctly.

I helped Enrique to make a video of how to install the TutorialMaker in Mac, and as I saw, everything was working correctly.
I will let you know of there are more issues
Thank you. 🙏🏽


Add better support for Haskell stack compiler tools

ale#Escape does not play nicely with a common pattern in haskell
executable usage. Many stack users invoke compiler tools via
stack exec [command] -- [options]. ale#Escape wraps this command in
quotes, because it includes spaces. This results in silent failure of
the fixer.
This commit adds support for stack as the executable of a tool. This
follows a pattern that has been implemented for bundler's tool chain.

This solution was mentioned here https://github.com/w0rp/ale/pull/1836

Still need to add some tests for hlint and convert some other tools to stack support.

@w0rp I've run into an issue where linters that use executable_callback fail with 'stack' exec 'foo' --. Do you know of way to fix this?

@w0rp This is good to go. All relevant haskell executables have been updated to support stack exec.

@w0rp this has been rebased to account for conflicts in #1908 and is good to go.

Cheers! :beers:

could @eborden give a quick explanation of what this does and what changes need to be made to one's vimrc? from https://github.com/w0rp/ale/pull/1836 it seems like we can just set let g:ale_haskell_hlint_executable = 'stack' and ale will use whichever hlint stack has access to?

@zkourouma Yup, you just need to set the executable to stack and then the package name will be used to execute it from stack. You'll have to do stack build hlint --copy-compiler-tool to get the package available though.
Alexis King covers reason for --copy-compiler-tool in this great post https://lexi-lambda.github.io/blog/2018/02/10/an-opinionated-guide-to-haskell-in-2018/


Forward original exception message when a require fails

When bundler failed to require a file it discarded the original message containing the reason why the require failed.
This change forwards the original message into the new message.
Example use case: jsonapi-resources referencing a nonexistent constant when loaded into a rails 5 project.

Could you please add a spec/test covering this?

I will look into that.

@p ping on this?

Have not had a chance to do it yet, sorry.

@p do you need any help on this?
If it helps, you'd probably want to take a look at and add the test coverage here: https://github.com/bundler/bundler/blob/master/spec/runtime/require_spec.rb

That is helpful, thanks!

Has this been superseded by #4187 ?

Closing as the functionality in this PR has been fulfilled by #4187.


[FLINK-6232][Table&SQL]Support proctime inner equi-join between two s…

…treams in sql api
Thanks for contributing to Apache Flink. Before you open your pull request, please take the following check list into consideration.
If your changes take all of the items into account, feel free to open your pull request. For more information and/or questions please refer to the How To Contribute guide.
In addition to going through the list, please provide a meaningful description of your changes.

[ ] General

The pull request references the related JIRA issue ("[FLINK-XXX] Jira title text")
The pull request addresses only one issue
Each commit in the PR has a meaningful commit message (including the JIRA id)

[ ] Documentation

Documentation has been added for new functionality
Old documentation affected by the pull request has been updated
JavaDoc for public methods has been added

[ ] Tests & Build

Functionality added by the pull request is covered by tests
mvn clean verify has been executed successfully locally or a Travis build has passed

Hi @fhueske , Thanks very much for the review! I have update the pr use JoinFunction instead of FilterFunction, and i will add more test later.
Thanks very much.
Yuhong

Hi @hongyuhong, thanks for the update.
Please do not squash update commits into the PR. Otherwise it is not possible to review individual changes. If you squash commits, I have to check the whole PR again because I cannot see what was changed since my last review.
It would be also good if you could leave a short message when you update a PR. Github does not send out notifications if the PR branch was updated.
I will review your PR later.
Thanks, Fabian

Hi @fhueske, Thanks for your reminding, i'm sorry that i forgot to ping you. I thought a PR could have only one commit, so i squash them to one, i will notice that.
Thanks very much.

The initial PR should have one commit. Following changes should be put as commits on top of the initial commit. But you are right, we should update the contribution guidelines to make this more clear.

Hi @fhueske , i have update a version :).

As for how to specify the join case is a stream and stream join, currently i check through there exist time indicator but not exist such as tumble(proctime).
I have test the analyzeTimeBoundary function in JoinTest, for the case ''a.proctime - b.proctime > 5 sec', it will report an error 'Cannot apply '-' to arguments of type '<TIMESTAMP(3)> - <TIMESTAMP(3)>'. Supported form(s): ' - ''. So maybe we don't need to support such situation. Another situation is 'timestampdiff(second, a.proctime, b.proctime) > 5', i seems not yet support in flink, should we add the support?

Thanks very much.
Yuhong

Hi @rtudoran @fhueske, i have update the pr with the latest interface, thanks for the reviewing.
Thanks very much.
Yuhong

Hi @fhueske, sorry for late reply, i have update the pr.

Hi @fhueske, thanks for the reviewing, i have update the pr here for reviewing, and also create a new pr https://github.com/apache/flink/issues/4266 to merge the commit, once you finish reviewing, i will close this pr.
Thanks very much.


IdentityUserToken - how works this "table"

Hello,
how works this table - IdentityUserToken, what is the purpose of this table?
I can't find the relationship with other objects becuase I've use the external providers but this table is still empty. :)
Thank you for your clarification.

It's where we store "tpkens". We don't user it by default, unless you are using authenticator apps. You could use it to add things like refresh tokens for external logins, but we don't do that by default, you have to use APIs to store them.


Deck version is not up-to-date in Kong website.

On Kong web page for deck, the version of Deck is 0.4.0, which is misleading to the creation of issues that shouldn't happen.

Work is in progress by the docs team at Kong, Inc. to address this problem.
The docs for decK are undergoing a major refresh currently.

This is updated now.


🤖 Configure beta releases

Add CI for beta releases

:tada: This issue has been resolved in version 1.6.0-beta.1 :tada:
The release is available on:

npm package (@beta dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Multiline include

Hey !
Thanks to port twig on javascript.
It seems include must be on called on a single line.
    {% include 'partial/mail_button_layout.html.twig' with {"button_name": 'Confirmer mon inscription', "button_href": 'http://localhost:8080', "separator": true } %}

I would like to do that
    {% include 'partial/mail_button_layout.html.twig' with {
        "button_name": "Confirmer mon compte",
        "button_href": 'http://localhost:8080',
        "separator": true
    } %}

Is it possible ?
Jérémie C.

+1

+1

1

I just tested this case. Yes, it's supported.

Except you're not using a remote template but specifying it in the JS source.
Then you need to add a backslash before the newline break:
var template = '{% import template with {\
  "foo": "bar"\
} %}';

It's just how JavaScript works.


Debug sessions can't be monitored across extension hosts

Does this issue occur when all extensions are disabled?: No, but this removes all debuggers :)

VS Code Version: 1.95.1
OS Version: Windows

It seems that some debug session functionality can be implemented across extension hosts and some cannot.
e.g. vscode.debug.onDidChangeActiveDebugSession is successfully fired between hosts, however vscode.debug.registerDebugAdapterTrackerFactory does not work.
Steps to Reproduce:

Use a setup with a remote workspace (e.g. WSL on Windows)
Deploy a debugger extension into the workspace host
Deploy an extension in the ui/local host which listens to debug events

Observe that debugAdapterTrackerFactory does not work and I would expect to be able to listen to debug events.
This scenario has come about because we have a browser-based debugger which must run in the UI extension host and we have also developed a generic debug memory viewer to interact with different debuggers no matter where they are running (see https://github.com/eclipse-cdt-cloud/vscode-memory-inspector/issues/150).
If this isolation of debug events is by design, are there any patterns which could be employed to specify the memory extension is installed in the same host as the debugger bearing in mind the debugger could be in any host? I don't believe extensionKind is enough because this decision needs to be made at runtime.

Yeah, debug adapter trackers currently have to be in the same EH as the DA. https://github.com/microsoft/vscode/issues/196009 essentially covers this.

generic debug memory viewer to interact with different debuggers no matter where they are running

So it could work with debuggers in either EH? I don't think there's really a good solution for you right now.
Just with the way debug adapters and debugging works, it wouldn't be straightforward to fix this, needs big changes to how debug adapters work in the EH.
Maybe a workaround would be to actually publish it as two extensions, one "ui" and one "workspace"? A bit weird but something like that might be a way out.
Closing as dupe of #196009

Ok, thanks.
Contrary to #196009, however, debug trackers do work in the UI EH (we use them) you just need your debugger there too!

Yeah, that's not called out in the OP but Connor's comment calls it out and I think that's behind the original issue


Autoclosing \begin and \end

It would be nice if the plugin would autoclose \begin statements with their matching \end statements to speed up typing. I wouldnt mind PRing if theres a contributing.md somewhere.

I highly second this.

Hi! A PR is really welcomed! Sorry there is no contributing.md yet, but please simply fork the repository and edit the main.ts file accordingly.
My deepest apology for not being able to reply and attend to requests in a speedy manner as this is a one person project.

I'd be happy to contribute! May not be for a couple weeks, though.
No worries whatsoever about replies/project details. It's great you've created this project in the first place.


perf: Antd icons tree shaking

SUMMARY
Previously we were importing the whole @ant-design/icons library, which contained over 800 icons. We only use 40 of those.
Implementing tree-shakable import allowed to shrink the chunk size by over 5MB.
BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF
Before:

After:

TESTING INSTRUCTIONS
Everything should work like before
ADDITIONAL INFORMATION

[ ] Has associated issue:
[ ] Required feature flags:
[ ] Changes UI
[ ] Includes DB Migration (follow approval process in SIP-59)

[ ] Migration is atomic, supports rollback & is backwards-compatible
[ ] Confirm DB migration upgrade and downgrade tested
[ ] Runtime estimates and downtime expectations provided

[ ] Introduces new feature or API
[ ] Removes existing feature or API

While I understand the need for this, the idea here was that you could use any Antd icon without having to specify it again. Not sure if there is a way around that to keep that functionality available.

Agree with @kgabryje 👍🏼


Fix the flaky ec2 test by reverting EBS change

Unfortunately, I believe the recent EBS PR is breaking the test suite

I'm pretty confident this PR  stabilizes the test suite and theres no need to revert all of this, in any case it would need to be reverted only the multi region change for the ec2 test suite, nothing else.