Add universally quantified types

It would be nice to add universally quantified types to our abstract syntax:
pub enum Type<Id, T = ArcType<Id>> {
    ...
    /// Universally quantified type
    Forall(Vec<(Id, Kind)>, T),
    ...
}

We can figure out concrete syntax later.

Do we have type schemes in our type checker? This could allow us to simplify that...

Wondering if this would allow us to do:
diff --git a/base/src/types.rs b/base/src/types.rs
index a4e08db..bca1eae 100644
--- a/base/src/types.rs
+++ b/base/src/types.rs
@@ -308,24 +308,24 @@ pub enum Type<Id, T = ArcType<Id>> {
     Variants(Vec<(Id, T)>),
     /// Representation for type variables
     Variable(TypeVariable),
-    /// Variant for "generic" variables. These occur in signatures as lowercase identifers `a`, `b`
-    /// etc and are what unbound type variables are eventually made into.
-    Generic(Generic<Id>),
     /// A builtin type
     Builtin(BuiltinType),
     /// A record type
     Record(T),
+    /// Universally quantified type
+    Forall(Vec<(Id, Kind)>,
     /// The empty row
     EmptyRow,
     /// Row extension
     ExtendRow {
         /// The associated types of this record type
-        types: Vec<Field<Id, Alias<Id, T>>>,
+        types: Vec<Field<Id, (T, ArcKind)>>,
         /// The fields of this record type
         fields: Vec<Field<Id, T>>,
         rest: T,
     },
     /// An identifier type. Anything that is not a builtin type.
     Ident(Id),
-    Alias(AliasData<Id, T>),
 }

Seems like AliasData is very close to being a universal quantification - it just has an identifier for some reason... 😕

Here is a useful reference implementation: https://github.com/tomprimozic/type-systems/tree/master/first_class_polymorphism

Its close but not quite the same so I am not sure it is possible to remove args from AliasData. Consider App(Alias("Result", ["a", "b"]), [Int, String]). a and b are substituted with Int and String respectively while for universal quantification they are instantiated with fresh type variables.

Maybe Alias needs a Kind associated with it? App(Alias("Result", Kind::Fun), [Int, String])?

The kind can be computed from the arguments and a fully applied alias is always Type so it would only be necessary for performance reasons.

What happens if you have:
type ResultString = Result String

Its close but not quite the same so I am not sure it is possible to remove args from AliasData. Consider App(Alias("Result", ["a", "b"]), [Int, String]). a and b are substituted with Int and String respectively while for universal quantification they are instantiated with fresh type variables.

Actually, Wouldn't Result be:
    Result String Int
==> (∀ err val -> | Ok val | Err err) String Int
==> | Ok Int | Err String


After update even my old images is not showing

It's because the bundle location is changing.  Use asset bundles or base64 encode your images.


SOLR-16598: Upgrade Protobuf to 3.21.12

from 3.21.8
Fixes some CVEs.
https://issues.apache.org/jira/browse/SOLR-16598
This is the latest patch version, thus compatible.  I spot-checked some version notes from the project for compatibility.
Note this fixes a possible issue of mixed versions.  We depended on protobuf-java-3.21.8 and protobuf-java-util-3.21.4.  I believe this was introduced by the Caffeine upgrade.
I didn't add a CHANGES.txt because I intend to add it to branch_9_1.  I believe post-release, the CHANGES.txt is synchronized out from this.  Any way, it'll be in "Other Changes" and look just like the issue title here, plus my name.

So I'm not a fan of putting non Solr direct dependencies in versions.props - basically they will never get removed. We should be upgrading the libraries that use this transitive dependency - which will have the same outcome of using the upgraded protobuf.
PS com.google.protobuf:protobuf-java*=3.21.12 would probably be better than what was added - this ensures that ALL protobuf-java dependencies use the same version instead of just the protobuf-java-util dependency.
Was out for the holidays so catching up on stuff.

So I'm not a fan of putting non Solr direct dependencies in versions.props - basically they will never get removed. We should be upgrading the libraries that use this transitive dependency - which will have the same outcome of using the upgraded protobuf.

Sure; I'm being pragmatic (trying to get something done now).  We can remove this eventually.

com.google.protobuf:protobuf-java*=3.21.12

Cool!  BTW protobuf-java-util and the non-util do get upgraded to 3.21.12 because -util depends on the non-util of the same version :-). Any way, what you suggested is superior.


caching: centralize caching

Why this draft PR?
1. Allows us to monitor memory consumption of all the caches.
By centralizing the channel caching, we can monitor the memory consumption by the caches.
2. Less memory use in some cases.
Loading the same slice twice, doesn't cost you twice the memory anymore (since things are stored by location).
3. It fixes subtle sources of bugs
We can also enforce that the slices are read only. This prevents the following source of "bugs":
ch1 = file["Force HF"]["Force 1x"]
ch2 = file["Force HF"]["Force 1x"]

ch1.data[0:100] = 0
print(ch2.data)  # Shows zeroes for the ones we overwrote in channel 1.

And instead prompts the user to explicitly make a copy if they want to change the data. We already do this for certain arrays coming from confocal objects.
ch1 = file["Force HF"]["Force 1x"]
ch2 = file["Force HF"]["Force 1x"]
ch1.data[0:100] = 0  # ValueError: assignment destination is read-only

copy = ch1.data.copy()  # Explicit copy!
copy[0:100] = 0
print(ch2.data)  # Data in ch1 was not modified

Note that in-place operations on slices are still fine though (which is nice, because those are often used in de/recalibrating). For example::
ch1 = file.force1x
ch2 = file.force1x

assert id(ch1.data) == id(ch2.data)
ch1 /= 5

assert id(ch1.data) != id(ch2.data)
np.testing.assert_allclose(ch1.data * 5, ch2.data)

4. It makes certain access patterns much more performant
Currently doing something like:
file = lk.File("file.h5")
for t in tracked_lines:
    track_force = t.sample_from_channel(file.force1x, include_dead_time=True)

Is horrendously slow clocking in at 42 +- 5 seconds for a small 30 second kymograph with 50 tracks. This reduces to 1.6 +- 0.1 seconds with the new cache. The following would have also worked to fix the problem without the cache:
file = lk.File("file.h5")
ch = file.force1x
for t in tracked_lines:
    track_force = t.sample_from_channel(ch, include_dead_time=True)

This would require additional awareness on the part of the user and doesn't have the benefit of allowing us to monitor how much data is going into these caches going forward.
Open questions
1. Small versus big slices
While doing this, I noticed that for Continuous slices, we always read the whole slice even if we take only a small segment (despite h5py supporting lazily slicing). Note that this was also the case before the caching was introduced (bug?).
At first, this seemed wasteful, so I set up the cache to allow slicing first and then grab the data (including start index and stop index in the location), but when you take many small slices, the performance is frequently far worse than reading the big slice as a whole at once. As a result, the case discussed above with the tracks still took 23 seconds.
One possible improvement to the cache system could be to include a start and stop index in the location again for continuous channels. Then keep track of how frequently a slice of a continuous channel with a particular path is accessed and if that exceeds some threshold assume that the user will be taking more chunks, dump the small chunks and load the whole slice instead. Then in the cache grabber, we could always check if the parent location (the one without additional indexing) is already present, and slice from that if it is.
Right now, from my testing so far, this additional complexity does not seem worth it though. Most h5 files contain one or two items and generally, you look at the whole thing before you start interacting with sub-slices. One iffy part would be if a single slice would exceed the memory capacity. But right now, you also have no way of loading those without going through the raw h5 structure.
2. What is a good default cache size?
I think making it proportional to a size in bytes makes more sense than number of items. Especially considering how much the items can vary in size.
I currently hardcoded the maximum at 1 GB, but I suspect this should depend on the user system somehow? Are there any guidelines for application memory usage?
3. API
Do we want to expose an API for users to set cache size or disable it entirely?
4. Files
It might be worth considering going one step further and only store locations in the lk.File object and handle opening/closing the resource in the function that looks up and caches these resources. Then we also don't need to keep the File open indefinitely. By handling file interactions in one place, it might also make it a lot easier to swap out file formats in the future.
Some final notes

When reading data from TimeTag channels, we actually read the data 3 times already even when we don't want to access it at all 4 by the time we actually read it. Note that we can fix this without having to resort to a global cache however.

The default functools lru cache is great, but items can have pretty different sizes, so. I think it's better to go with one where you can set a custom size_of.

Considering that disallowing data modification is a breaking change, I would propose we iterate on this a bit now, and roll this out when 2.0 rolls around.

Thoughts?

How about starting by adding the caching as an opt-in global config? This would allow us to test the caching in Lakeview.


Is there any possiblity to make bubble text in kivymd ?

I have been trying to make chat UI the same as Whatsapp and I have tried to make bubble text on my screen but I did not found anything like that.

see in above picture two people conversation text is in a bubble so I am trying to implement the same thing so If you guys know how to implemented please help me and the help will be appreciated

@navjotcis These interface elements are not related to material design.


Nitrate ID error during tmt test export --nitrate

Hi,
I am seeing an odd error while exporting fmf converted test back to nitrate.
The test has been exported once before I am exporting it again to test new features.
The output says:
$ tmt test export --nitrate
Test case 'TC#0499983' found.
...
...
Test case 'TC#0499983' successfully exported to nitrate.
ERROR  Nitrate test case id not found.
But I can clearly see that the ID is 0499983 and the data was actually exported into TCMS. I changed tags in main.fmf and those were added to the TCMS test case by the export. So I do not know what the error means.

If you want to export just 'TC#0499983' you need to be in the directory of that test and call tmt test export --nitrate . or call it specifically for that test case tmt test export --nitrate /Regression/bz1182987-RFE-lftp-restricting-each-SSL-TLS-version from whereever in the gfmf tree.
Right now you are trying to export every test in the fmf tree. Next test tmt is trying to export is bz1228484-mirror-directory-hang which was apparently imported before attribute tcms was renamed to extra-nitrate which is expected.
I recommend to re-import all test cases imported before the change.

I see now, I forgot the "." at the end of the command. Not a bug then.

I forgot about it as well, had to try it myself :)
Closing the issue.


[Screencast] Fix entering https url

Fixes #1163

Thank you for this PR @stagas. I've requested a review from @hkal.

Looks good to me.

thanks for finding the issue and pushing a fix for this @stagas, change LGTM. We currently have an issue with the CI. I'm pushing a fix and I'll come back and approve this one afterwards.


uppercase transform on NI field

This was a nice little feature in the staff app that Foundation provided.

Nice!  Merging...


Increase timeout for lint action

Fixes #15

Also for reference https://github.com/golangci/golangci-lint-action/issues/297


(URGENT) When outputs are broken, do not return success code

From https://github.com/Spatial-Web-Foundation/SWF-Corpus_and_IEEEP2874-D2/pull/509#pullrequestreview-1208442721
This document is forked into here for our team to debug:

https://github.com/metanorma/SWF-Corpus_and_IEEEP2874-D2/pull/18

@prasaanth-verses:

This PR is not generating the PDF, doc, and HTML outputs when I download the draft. This is usually the case when there is a syntax error. I'm not sure why things are passing and why the error isn't displayed in the pipeline.
any recommendations on how to deduce why there was nothing generated?

@CAMOBAP can you please help investigate how we can force errors to show up in GitHub Actions when any error occurs?

@ronaldtse I suppose we prepared --strict mode in metanorma-cli.
To be on the same page:

Should I investigate the root of the issue (I mean why compilation fails?
What behavior should be there, should metanorma fail-fast by default?

Should I investigate the root of the issue (I mean why compilation fails?

@opoudjis is aware of this: the failures are due to content being mis-encoded. @metanorma/editors will fix those errors.

What behavior should be there, should metanorma fail-fast by default?

In normal usage, I don't think Metanorma should fail-fast unless explicitly specified.
In GitHub Actions, there should be an option to fail-fast.

In GitHub Actions, there should be an option to fail-fast.

Done https://github.com/actions-mn/site-gen/issues/1


Update GreetingController.java

/Approve

@rajayya: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

pr-build
41677e29cb16145c772a03d36fec5d38d819ed66
link
/test this

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the jenkins-x/lighthouse repository. I understand the commands that are listed here.


[Bug] Pageview events not appearing in real-time monitor

I just try
gaClient.Send(ga.NewPageview())
but I can not see in realtime data.
THX!

I think that should work, so I guess it's a bug. If you'd like to help out, could you compare what the library is sending to what GA expects?

@jpillora
I got logs:
The library sending (Hide some secret):
av=1.0.0&cid=go-ga&dh=<IP_ADDRESS>&dl=http%3A%2F%2F<IP_ADDRESS>%2FXXXX&dp=%2FXXXX&t=pageview&tid=UA-XXXX-1&ua=curl%2F7.43.0&uip=<IP_ADDRESS>&v=1
So, I didn 't found difference.

Yeah, looks okay to me, it's possible GA ignores localhost, I'm not sure

@jpillora
May be pageview not show in realtime report?
It 's works fine when I replace pageview to event.

Solved!
Should not use ApplicationVersion.

Ah interesting, thanks for debugging!

THX!

Solved!
Should not use ApplicationVersion.

@leeeboo can you explain it? I don't understand what should I do.

Solved!

Should not use ApplicationVersion.

@leeeboo can you explain it? I don't understand what should I do.

Solved thanks!

Solved!

Should not use ApplicationVersion.

@leeeboo can you explain it? I don't understand what should I do.

Solved thanks!

I mean I replicate this error too. But I don't understand what should I do to solve it.
What do you mean Should not use ApplicationVersion.?


Are unions supported with Angular2 Apollo?

There is no mention of it in the docs for Angular but it is there for the React docs. When I try to use a union in Angular the data comes back undefined.

It DOES work it seems, but it's not documented for the Angular docs. You have to set an IntrospectionFragmentMatcher - https://github.com/apollographql/apollo-client/blob/94d8d200d727337f265a10472723b0af0fd59d7e/test/client.ts#L1113


Compress postgres dump more

Coverage remained the same at 87.184% when pulling 31b302f5d5e0f18a04af567c71d11a2cfaa3902a on feature/DEV-148-Postgresql-dump into aa861270d5d86d03036694636bb1b0af06c8e8d4 on develop.


Wrong documentation for .sync modifier

There is an error in the vue.js documentation for the .sync modifier you can find here:
https://vuejs.org/v2/guide/components-custom-events.html#sync-Modifier
It states, that you should use a kebab-case event name for the .sync event:

That’s why instead, we recommend emitting events in the pattern of update:my-prop-name. `

This is not correct. because the event must be camelCased to work properly.

Also discussed here https://github.com/vuejs/vue/issues/6428
and here: https://github.com/vuejs/vue/issues/8244

Just updated for now, but once this is merged and released, I'll be changing it back. 🙂


Known Issue | 已知问题

Due to the limitation of CSS and the node tree structure of Obsidian:

the code block line number in live-preview mode will render incorrectly if the code block is too large
the code block cannot render line number in preview mode

Due to the lack of time to develop and other personal reasons:

the list and task items inside callout may render incorrectly

Unknown performance issue:
If you fill a little lag while scrolling or in other scenarios, please try to disable the option in Style Settings:

en: Maple Workspace > modal & setting panel > enable modal background blur
中文: Maple Workspace > 弹出框 & 设置面板 > 开启弹出框背景模糊


Calling page.drawText() with a font blows up size of pdf document

When calling page.drawText() more than ~470 times the size of the final PDF suddenly blows up. Here is the code to replicate:
const fs = require('fs'),
      { PDFDocument, StandardFonts } = require('pdf-lib');

const runTest = async () => {
  const originalPdfBytes = fs.readFileSync('500-blank-pages.pdf');
  const pdfDoc = await PDFDocument.load(originalPdfBytes);
  const font = await pdfDoc.embedFont(StandardFonts.Helvetica);

  for (var i = 0; i < 500; i++) {
    const page = pdfDoc.getPages()[i];
    page.drawText(`${i}`, { x: 400, y: 400, font });
  }
  const pdfBytes = await pdfDoc.save();
  fs.writeFileSync('documents/output.pdf', pdfBytes);
}

runTest();

I start with a pdf consisting of 500 empty pages (77 KB).  However starting from around the 470 mark the output pdf suddenly jumps to ~3.3 MB.
The work around is to set the font on the page level with page.setFont(font) instead of setting the font on each call to page.drawText().

Hello @thebenlamm! I'm unable to reproduce the issue. I created a script that incrementally draws text on a page and then saves the document, recording its size at each iteration:
import fs from 'fs';
import { PDFDocument, StandardFonts } from 'pdf-lib';

const makeWithEmptyPages = async (numPages: number) => {
  const pdfDoc = await PDFDocument.create();
  for (let i = 0; i < numPages; i++) {
    pdfDoc.addPage();
  }
  return pdfDoc.save();
};

(async () => {
  const originalPdfBytes = await makeWithEmptyPages(500);

  const pdfDoc = await PDFDocument.load(originalPdfBytes);
  const font = await pdfDoc.embedFont(StandardFonts.Helvetica);

  const sizes = [];
  for (let i = 0; i < 500; i++) {
    const page = pdfDoc.getPages()[i];
    page.drawText(`${i}`, { x: 400, y: 400, font });
    const bytes = await pdfDoc.save();
    sizes.push([String(i + 1), String(bytes.length)]);
  }

  const csv = [['Pages', 'Bytes']]
    .concat(sizes)
    .map((row) => row.join(', '))
    .join('\n');

  fs.writeFileSync('sizes.csv', csv);
})();

Here's the resulting sizes.csv file: sizes.csv.txt (GitHub requires the .txt extension 🙄).
And here's a visualization of the data:

As you can see, the size of the PDF grows linearly with the number of draw text calls. I do not see the exponential jump that you are describing. (Note that the Pages axis is really the number of drawText() calls. All iterations have 500 pages. I just labelled it poorly.)
Can you see anything incorrect about the script I'm using here? If not, perhaps the issue has something to do with the specific PDF you are starting with? If so, please feel free to share it and I'll try again to reproduce the issue.

@thebenlamm @duyduong112 I'm going to close this issue for now, as I cannot reproduce the issue. But please feel free to reopen it if you'd like to dig into this further!

I did a bit more testing on this. I'm still not sure what exactly is causing the problem yet. But my best guess right now is some weird interplay between object streams, pako's deflation, and the number of objects in the document.
I ran 4 variations of the script using your blank500.pdf document:
// Test Types:
// 1: No object streams with font key
// 2: No object streams with font method
// 3: Object streams with font key
// 4: Object streams with font method

(async () => {
  const originalPdfBytes = fs.readFileSync('/Users/user/Desktop/blank500.pdf');

  const pdfDoc = await PDFDocument.load(originalPdfBytes);
  const font = await pdfDoc.embedFont(StandardFonts.Helvetica);

  const sizes = [];
  for (let i = 0; i < 500; i++) {
    console.log('Iteration:', i);
    const page = pdfDoc.getPages()[i];

    /********** Choose one test type below ***********/
    // Test Type 1
    page.drawText(`${i}`, { x: 400, y: 400, font });
    const bytes = await pdfDoc.save({ useObjectStreams: false });

    // Test Type 2
    page.setFont(font);
    page.drawText(`${i}`, { x: 400, y: 400 });
    const bytes = await pdfDoc.save({ useObjectStreams: false });

    // Test Type 3
    page.drawText(`${i}`, { x: 400, y: 400, font });
    const bytes = await pdfDoc.save({ useObjectStreams: true });

    // Test Type 4
    page.setFont(font);
    page.drawText(`${i}`, { x: 400, y: 400 });
    const bytes = await pdfDoc.save({ useObjectStreams: true });
    /*************************************************/

    sizes.push([String(i + 1), String(bytes.length)]);
  }

  const csv = [['Pages', 'Bytes']]
    .concat(sizes)
    .map((row) => row.join(', '))
    .join('\n');

  fs.writeFileSync('sizes.csv', csv);
})();

Here's the merged version of all 4 sizes.csv files: merged-sizes.csv.txt
And here's a plot:
As you can see, the two variants that do not use object streams are, as expected, much larger. And the two variants that do use them are much smaller, even with the unexpected jump you've observed in the Test 3 variant.
I'll continue looking into this as I have time.


fix typo in R installation instructions

Fixes typo to allow for copy-paste installation of R package.

@daviddalpiaz thanks for using LightGBM and for contributing here!  Sorry, but this issue you've found is my mistake. Our goal was to make all of the artifact names kebob case (lightgbm-{version}-r-cran.tar.gz),  but since we haven't done #3283 I'm making them manually, and made a mistake.
I just uploaded the 3.0.0rc1 release with the kebob-case name, so the instructions will be correct. I left the snake_case one up there to not break anyone's code.
Now that we've released 3.0.0, could you change this PR to reference version 3.0.0?
https://github.com/microsoft/LightGBM/releases/download/v3.0.0/lightgbm-3.0.0-r-cran.tar.gz

Huh. I could have sworn in looked for the R release of 3.0.0, but guess I missed it! Thanks for all the hard work. Hoping for CRAN soon so I can encourage my students to use LightGBM!


Missing vibration (Android)

Sometimes, the app should vibrate but doesn't.
(even if Vibrations are enabled in the app settings, since v1.1.2401)

On some Pixel phones, the app never vibrates


Deprecate falcon.testing.httpnow()

Apparently this ancient alias has survived unnoticed from the very early iterations of the framework.
Wrap it in the @deprecated(...) decorator so that we don't miss it again.
Write that it will be removed in Falcon 5.0 in the deprecation message.

Sure! If you have any question feel free to ask it here!

Hey guys, I know I'm not the contributor in this issue but I have a suggestion for y'all.
To solve this, do we just have to add in init on testing?
httpnow = deprecated('This method is deprecated and will be removed in Falcon 5.0.')(     _util.http_now )

Hi @arthurprioli, yes, but we also need to add a test asserting that a deprecation warning is emitted upon referencing this method.
We also need to check with @kyash99252, maybe there is a PR already on the way?


Allow executors to define containerd and cridockerd behavior

Proposed Changes

In order to properly resolve https://github.com/rancher/rke2/issues/2204, the rke2 windows agent needs to be able to define how it reacts to containerd exiting. Currently, rke2 uses k3s' implementation for containerd, which will call os.Exit if the process stops running. On Windows nodes, this sudden exit prevents the top level context from fully canceling, resulting in supporting processes created with CommandContext (kubelet, kube-proxy, etc.) continuing to run. In the event that the rke2 service is restarted, but those processes are not cleaned up, the service will enter a crash loop which must be manually resolved.
k3s should provide a way for the rke2 windows agent (or any custom executor) to define how containerd is executed, in a similar manner to other components such as the kubelet or kube-proxy.

Enhance the Executor interface so that custom executors (i.e. rke2's pebinaryexecutor) can define how containerd and cridockerd are executed.
Export the utility functions containerd.PreloadImages and containerd.SetupContainerdConfig so that code duplication between k3s and rke2 is reduced as much as possible
Start containerd/cridockerd when agent.Agent is called, as opposed to doing so in the run function
Update the embedded executor to satisfy the updated interface, continue to use the existing logic for running containerd and cridockerd

Types of Changes

Enhancement, custom executors now have control over the behavior of containerd and cridockerd.
Verification

The k3s embedded executor should be tested to ensure that it properly starts the desired container runtime on startup, otherwise there are no functional changes which would need more significant verification.
Testing

Manual testing:
After building a custom k3s binary, I was able to confirm that a 2 node cluster (1 cp+etcd server, 1 agent) will properly start the desired container runtime (both containerd and cridockerd were tested), and that workloads can be deployed onto that cluster without issue using kubectl.
Automated testing:
The existing integration and e2e tests cover basic startup and functionality of the k3s agent and server, so no new tests have been added. Since this PR focuses on extending the executor interface, I could not think of a way to add meaningful unit tests to cover these changes
Linked Issues
https://github.com/rancher/rke2/issues/2204
User-Facing Change

NONE

Further Comments
In order to start the runtime using an executor I had to move the call from agent.run to agent.Agent. This results in the agent being started before the following code is called
if cfg.AgentReady != nil {
	close(cfg.AgentReady)
}

Previously this call was made once the runtime was started, but before the agent was created. Looking at the code I don't think this has a negative impact on the server, however I wanted to call this out in case there is a subtlety that I'm missing in how that channel is expected to be closed

Have you tested this in RKE2 yet? The sequencing of the agent startup is much fussier on that side; I'm curious if the changes will have an impact on that side.

I like this PR and what it tries to solve. Removing/restarting rke2 is a pain in Windows

I was able to test out the fix for 2204 today using a custom rke2 binary compiled against this k3s branch. Once I updated the pebinaryexecutor and the staticpod executors I didn't see any issues during startup for rke2. I tested both linux and windows nodes
I'm looking into the CI failure today, will update once that is resolved

It looks like the e2e tests have broken, glad to approve once those are green.

Rebased this pr off of master, it looks like CI is now passing

Any idea when we might be able to merge this? Also, should I go ahead and raise back port PR's for this change, or is that handled during the release process?

Hey @HarrisonWAffel we entered code freeze for January releases on Friday (01/12). Is this crucial to get in for the January releases, or is a February timeline alright? cc @brandond @manuelbuil

@caroline-suse-rancher
Nope this is not critical for the January release, I'll double back on this when code freeze is over. If there's any other action items on my side needed let me know!
Thanks!

@HarrisonWAffel devs are responsible for their own backport issues and PRs, if you're up for it you might as well get those created now.


Navigator goHome results in error

Hello, getting an error when trying to use the goHome function from the navigator library
[ERROR] :  Script Error {
[ERROR] :      column = 41;
[ERROR] :      line = 38;
[ERROR] :      message = "undefined is not an object (evaluating 'that.currentController.navWindow.close')";
[ERROR] :      sourceURL = "file:.../navigation.js";
This is with multiple SDKs on an iOS simulator for iPhone 5S.
Any advice?

Hi @moreli. The Navigator.goHome() method is not used in Movies and contains out of date code. I'll remove it in a future update. Sorry about that.


The minimize-active-hovered-path makes the wm crash

If I run wormc minimize-active-hovered-path ~/.config/worm/icons/minimize-hover.png which is a 20x20 png file, it just crashes the window manager. However the ,minimize hovered inactive one, and everything of close and maximize is working, only this one is making the wm crash.

Thanks for bringing this up! Looks like I accidentally used Nim's fat string type (which includes length etc, is heap allocated I believe) in an array instead of cstring which the X API uses, which of course causes a memory error. not sure why that happened since I just copy pasted the same template code for all of the button setters, but it's fixed now ;)
I'll release a v0.3.1 to fix this issue.


Image upload is not properly credited to the contributor

What
Image upload is not properly credited to the contributor
Screenshot

Part of

#4202

What do you mean? Is newt a user?
Does this happens always or just sometimes?

This happens all the time, for logged in users. I'm able to reproduce by using the Image manager to crop images. This openfoodfacts-contributors is actually me, from my mobile phone, with latest develop
https://world.openfoodfacts.org/product/3528161506805/buche-glacee

@VaiTon did you have a chance to start investigations ? Did you find anything ?

Well actually it seems that sometimes the app doesn't provide a password.
A fix is coming


Default to optimization level 2 in cmake for release mode.

This will sync up configure and cmake settings in preparation for #659.

I have made some changes:
To overwrite optimization level, it can be set with -DCMAKE_C_FLAGS=-O3. To overwrite all optimization flags the specific configuration flags variable can be set, ie: -DCMAKE_C_FLAGS_RELEASE=-O1.

Shouldn't that check be able to detect -O2, -O1, -O0 -Os, -O and -Ofast as well? Not just -O3?
Maybe replace the 3 with [a-z0-9]{0,5} or something?
Intel also supports -Od btw.

If somebody specifies -Od then the -O3 will not exist and the replace will do nothing..

Ah, I forgot the NOT there :)

This seems... strange.  I do not know if it will go over well.

@dankegel -O3 is incompatible with UNALIGNED_OK (at least in rough terms)
An alternative could be to disable vectorization using function attributes on each of the functions that depend on UNALIGNED_OK.
(Or the heavy hammer, disable using gcc command-line parameter to disable it per compilation-unit.)
We probably should document this and warn about it.


WIP: Rewrite component using React Three Fiber

It's a well known issue that Three.js needs some deep tweaks to have its rendering working as expected with React's rendering loop. This was causing a huge drop in fps when trying to use the ThreeCanary component inside a React app. React Three Fiber handles that for us by implementing a React renderer based on Three.js.
Given that, this PR rewrites the entire component using React Three Fiber, keeping same UX and style from pure Three.js implementation.
The result is a React-compatible (with better state management, etc) component running at ~60 fps!
https://user-images.githubusercontent.com/49062/138212376-733b4632-5cd7-4612-8acb-e6fa923df1df.mp4
It keeps the performance even when running as part of a React app:
https://user-images.githubusercontent.com/49062/138212430-ed2a82f5-9776-4abb-a98d-fdea7ca7f0f3.mp4

Can we get rid of src/lib/ThreeCanaryLegacy.js?

@laurogripa done :-)
Some extra improvements:

Migrated to styled components
Added image thumbnails on dialog pop-ups
Transparent bg

IMHO good to go and to bump a 0.2 release.


Error with helm install on 2.0.0-rc2

A clear and concise description of what the bug is.
Expected Behavior
Successful install of Keda
Actual Behavior
Receive the following error when installing with Helm
Error:  FAILED: rendered manifests contain a resource that already exists. Unable to continue with update: CustomResourceDefinition "triggerauthentications.keda.sh" in namespace "" exists and cannot be imported into the current release: invalid ownership metadata; label validation error: missing key "app.kubernetes.io/managed-by": must be set to "Helm"; annotation validation error: missing key "meta.helm.sh/release-name": must be set to "keda"; annotation validation error: missing key "meta.helm.sh/release-namespace": must be set to "keda"
Steps to Reproduce the Problem

kubectl create ns keda
helm install keda kedacore/keda --version 2.0.0-rc2 --namespace keda

Specifications

KEDA Version: 2.0.0-rc2
Platform & Version: Helm v3
Kubernetes Version: 1.19.0
Scaler(s): NA

I am also getting the same error with Kubernetes version 1.19.0

Working to repro right now - thanks for reporting.
// @zroubalik @tomkerkhove


[Change] x11-window: implement on_title

This enables to set the window title at runtime. Until now, the window just had the name "Kivy" (as Kivy is the init value of the Window.title property. With this implemented you see the title "Touchtracer" when you launch the demo/touchtracer example.

Looks good, thanks!


Created Friesland College staff domain

fclive.txt is the domain for Friesland College students. This one is for the teachers.

The domain's been already added so i'm closing the request


Filters classes were added

Please assign me the pull request in order to review and merge it, thanks


Type hints for other projects

I see that you are using type hints internally to check the spec. However, I am not sure if there are plans to export type hint annotations for being used in projects consuming and/or implementing this spec.
I am currently working in a project that uses Mypy to catch typing errors. I wanted to change it so that it does not assume NumPy arrays, but uses the interfaces and semantics defined in the array API standard. However, I am worried that doing so leaves me without a way to statically check via Mypy that my typing is correct. Is there currently any way to do it?

+1. https://github.com/data-apis/array-api/pull/589 will make the existing type hints more practical by having our array object be a Protocol, and then we can think about packaging the type hints as a standalone package, or alongside stubs (https://github.com/data-apis/array-api/pull/472).

I also noticed that, although it would be very useful to make the Array protocol generic w.r.t. shape and dtype, that could not be meaningfully used without Python support for higher kinded types, and there is not even a PEP for that yet: https://github.com/python/typing/issues/548.


What if we mistype Fuck?

 I think this is not it's meant to be...

What I did here:
I can't do mkdir at / without sudo which I did, and accidentally ran fuk instead of fuck.

Can this be implemented? - like, whenever thefuck tries to correct itself, it'll get the 2nd latest command.

Fixed in 9ba36c9


Mynewt unit tests - Add repo prefix to dependency lists

This PR addresses the following newt errors:
[ccollins@ccollins-mac:~/tmp/myproj3]$ newt test @mcuboot/boot/bootutil @mcuboot/boot/boot_serial
Testing package @mcuboot/boot/bootutil/test
Could not resolve package dependency: @mcuboot/test/testutil; depender: boot/bootutil/testTesting package @mcuboot/boot/boot_serial/test
Could not resolve package dependency: @mcuboot/test/testutil; depender: boot/boot_serial/test
Error: Test failure(s):
Passed tests: []
Failed tests: [boot/bootutil/test boot/boot_serial/test]

The unit tests depend on a few Mynewt packages (test/testutil and sys/console/stub).  If there is no repo prefix in the dependency specifier, newt assumes the package is in the local repo (mcuboot).  This PR adds the @apache-mynewt-core/` prefix to these dependencies.
Note: This PR only fixes the newt errors.  Some build errors get reported after this fix is applied.

LGTM, please add the missing signed-off-by!

Thanks, @utzig.  I modified the commit message to include the "signed-off by" string and force pushed.

@ccollins476ad May the force be with you, thanks!


Clarify longer infection chains

Fixes #217

Thanks for the suggestions. Let me know what you think of the latest commit.

@oremanj this one also looks good to go if you are ready to merge it.


Implemented namespace hash digest

[x] issue #27
[ ] follows contribution guide
[x] code change includes tests
[ ] breaking change

Implemented namespace hasher and added tests for the same.

I left some reviews; please resolve them and also use the scarb fmt command for code formatting tests to pass.

I have addressed the comments and have resolved it.


Bigtable: Fully expose Instance / cluster admin features

Instance.py does not fully support instance and cluster management. Cloud Bigtable replication allow introduced the ability to create instances with multiple clusters.  Also, there were minor features that were added that also need to be available in the client.  Here's a list of features required:

[ ] Support labels on instance creation and updates
[ ] Support the ability to create an instance with multiple clusters
[ ] Users should be able to specify clusterIds and display names per cluster
[ ] The client should use the partialUpdateInstance method and not update instance.
[ ] The project that system tests run in now need more nodes.  Increase the quota to 60 nodes so that up to 10 concurrent tests can run.

It looks like bigtable/tests/unit/test_instance.py's test_create_w_explicit_serve_nodes method was never complete.  (see this comment)
The method needs to set all parameters, and the input should be checked.


Add RepoReapers data set and associated tool

RepoReapers is a project out of Rochester Institute of Technology in which we are attempting to separate the signal (i.e. repositories containing engineered software projects) from the noise (i.e. repositories containing class assignments, example programs, images only, text only, etc.). The data set is aimed at helping MSR researchers choose repositories that are representative of engineered software projects. The tool, reaper, that was used to generate the data set is also available to allow researchers to run similar analysis on repositories of their choosing.
Specifics of the tool may be found in the README.md file in the GitHub repository or from the draft version of the research paper.

Very interesting work!  Thank you for the contribution.


Deploying to GKE with LoadBalancer results in 404

I've deployed to my GCE /  GKE environment with ./deploy.
After after everything is up, I can proxy to all instances.
But if I deploy the Nginx ingress over tools/ingress/init.sh I'm getting first a 400 error in the UI.
This could be solved with changing the service type from ClusterIP to NodePort for all services.
Now the status looks good and I can reach my test domain grafana.example.com
But I get a 404 error for all files except the initial html document.
Any idea?

Hi @khaefeli, sorry for the late response. Have to do more tests on Google Cloud. I'm using AWS and didn't test it much on Google Cloud. I'll set a cluster and test it in the next couple of weeks.


Configure the path of the Node.js entry chunk

Description
This PR allows configuring a specific path to Node.js entry chunks. Before, these
would be generated under most of the same rules as dev chunks. However, in some
cases, Next.js expects these chunks to be under a specific path. In any case,
having unique chunk paths isn't particularly useful on the server-side.
Testing Instructions
N/A

Current dependencies on/for this PR:

main

PR #5395

PR #5396

PR #5397

PR #5398   👈

This comment was auto-generated by Graphite.

Test Case turbopack-tests::snapshot test_tests__snapshot__runtime__default_build_runtime (crates/turbopack-tests/tests/snapshot/runtime/default_build_runtime)
fails with
the build chunking context does not support evaluated chunk groups


support XR_META_body_tracking_full_body

undocumented but tested working on quest 3

Looks good but I wonder, since this seems to be a superset of XR_FB_body_tracking, could you tweak the other bindings instead of writing completely new ones? I know the maintainer of openxrs is also on the idea of not exposing obsolete extensions if newer ones provide a superset of capabilities.


Cascading destroy when deleting flag conditions

When you delete a flag condition, this will cascade to the flagging logs and cause all posts your account has autoflagged to be deleted.
A example of this is here: https://metasmoke.erwaysoftware.com/post/57906/flag_logs
This post was autoflagged by NobodyNada, MAR, Ferrybig, but it no longer shows my user after I deleted my flag condition.

this probably needs denormalisation, or reassigning the affected flags to System

Lost some data on this one, but it shouldn't happen in the future.


[Bug] Casting top_k and penalty variables

coming from the automatic1111 implementation of this repo. I noticed the repetition penalty and top_k variables aren't casted to floats and integers, respectively, which will cause error when the average user dragging the sliders; fyi

Great catch. Thanks for that.
Updated to fix that


Maybe add a "now" column to the at-a-glance dashboard and data

A "now" column would not be an average, but would show the last available data.  Given that we sample every 5 minutes, it would give a fairly good moment-by-moment impression of what's going on, without having to look at the graph.  Overall it would improve ease-of-use; no data would be presented that can't already be viewed.

The new dashboard automatically fetch the {clusterName}-at-a-glance.json every 5 mins as long as the browser tab is open.
If we can include when the JSON generated timestamp in the JSON file itself then it can be shown along with the table, so user can see how recent the data is.

The date/time of generation is already in the JSON, it is the "date" field and has the format YYYY-MM-DD<space>HH:MM.

I'll take this for now.  What we want to do in the at-a-glance.json is to add a "now" field and also a "date" field, the latter can be either the time of last data for the host in question or it can be the time of report generation.


Selection of the gate set

I would like to ask why in the MRB demo code, the gate set you selected does not include all single-qubit Clifford gates. It is written in the article that this gate set must satisfy 2-design, and the complete 24 Clifford gates is a 2-design.

Additionally, why does the fit parameter r_Ω become smaller when using the Pauli randomized layer with all the one-qubit gate having the same error rate?


chore: drop lockfiles

lockfiles were great in the past, but now, they harness the library development, preventing a proper development and testing.
lets drop this stuff

closed by #65


Documentation folder structure

In order to be able to build version 1.1 with ReadTheDocs I have to add the path to the conf.py to settings

Python configuration file: doc/sphinx/source/conf.py
Path from project root to conf.py file (ex. docs/conf.py). Leave blank if you want us to find it for you.

Unfortunately, there is no way to specify this path per branch or through the configuration yaml, so we need to use the same path for both 1.1 and 2.0 versions at least while there is active development in both.
I have tried to replace the conf.py of the old version with a link to the new one, including a bit of code to change the current folder, just in case that works but it failed.
It will be ok to move the doc of the version 1 to doc_old or doc_v1 and put the one for 2.0 in the same place?
@mattiarighi @axel-lauer

If this is done in REFACTORING_backend it should be OK, but please use esmvaltool/doc and not doc/.
Our reference for the documentation of v1.0 will still be the development branch anyway.

That's the problem: I can not use esmvaltool/doc without breaking ReadTheDocs config for development and master

Sorry, didn't get that.
Can we set the same path and append _v2.0 to the documentation files of the new version?

It is possible, but at least the index.rst should be modified because it is used by ReadTheDocs as the entry point for the documentation

As long as the user guide is still correctly generated for v1, it is fine to me.
@axel-lauer

Ok. I'll try it. Let's hope it works !! I have some problems to build the doc because of timeouts and I am a bit afraid that it will try to build all files. Let's see

do you guys have a (preliminary) PDF of the new manual I can snatch off you by any chance (or someone tell me how to build it without breaking anything)? :beers:

@valeriupredoi  To build the documentation, install with development dependencies and use the build_sphinx command:
pip install -e .[develop]
python setup.py build_sphinx

You can see it online her:
http://esmvaltool.readthedocs.io/en/refactoring_backend/
You can also download the pdf

awesome, guys, much appreciated :beer:

Is this still an issue? Or can it be closed?


Major Release

v1.6.0
Additions:
alarm-config.mts

Added metrics for CloudFront, Route53Resolver, TransitGateway, and VPN services.
Added network in and out metrics for EC2

Fifo Queue

Added a fifo queue to the alarm-tools module to ensure that alarms are created in the correct order.
This will prevent alarms from being created before the necessary resources are available.

New Modules:

cloudfront-modules.mts - Contains functions for creating CloudFront alarms.
route53resolver-modules.mts - Contains functions for creating Route53Resolver alarms.
transit-gateway-modules.mts - Contains functions for creating TransitGateway alarms.
vpn-modules.mts - Contains functions for creating VPN alarms.

Major Revisions:
main-handler.ts

Refactored the main handler to use the new fifo queue to ensure alarms are created in the correct order.
Updated the handler to use the new modules for CloudFront, Route53Resolver, TransitGateway, and VPN alarms.
Refactored the routeTagEvent function to use switch statements for each service and resource type.

Still pending config review from @darenmcgill for R53 and Transit Gateway alarms. As well @darenmcgill Can you please review the vpn alarm configs as well and confirm those are still to your liking?
Added in ReAlarm Lambda and Fifo Queue for review. Both are tested and working.
Still pending VPN Deployment in test env for testing vpn modules.
@tvc123 We need buy off and review for the default alarm config values for CloudFront. Those can be found in handlers/alarm-config.mts

Closing and opening New PR with prometheus-develop branch which contains all these changes in addition to functional Prometheus logic.


New PST Issuer

"https://mercury-ambitious-muenster.glitch.me": {
	"name": "Fraud test",
	"contact"<EMAIL_ADDRESS>	"endpoint": "https://mercury-ambitious-muenster.glitch.me/.well-known/trust-token/key-commitments",
	"expiry": "1719633600"
},

Please follow the process described in https://github.com/GoogleChrome/private-tokens/blob/main/PST-Registration.md for registering as a new issuer.


TRAINING: Errors after executing version.train() due to "KeyError: 'box_loss'"

Hi everyone! I saw that there was a problem after I was done with training. It seems the Roboflow Python package has changed since last year. Previously, model evaluation details were not displayed in the terminal, but now it seems the error occurs before I can see the model evaluation in Roboflow. I suspect the issue might be that a request is being sent before the model evaluation is completed, which could explain why it’s unable to find "box_loss."
When I ran the newly trained model and used prediction, then it worked!
roboflow-python version: 1.1.40
operating system: macOS Monteray (12.7.4)
python version: Python 3.10.0
Error

Code:
import roboflow

rf = roboflow.Roboflow(api_key="API_KEY")

workspace = rf.workspace()

another_project = workspace.project('project_id')
new_version = another_project.generate_version({"augmentation": {}, "preprocessing": {}})
version = another_project.version(new_version)
version.train()

Created PR https://github.com/roboflow/roboflow-python/pull/313 .
After merging this PR 313, we can work on below issue.
There is one more issue  https://github.com/roboflow/roboflow-python/issues/314.


[Rancher2] Incomplete instructions for Monitoring Alerting Configuration

Request Summary:
In this section: Trusted CA for Notifiers
The instructions state "Add your trusted CA secret to the cattle-monitoring-system namespace" but it doesn't specify the Secret Name and the Secret Key that the Notifier is looking for.
Details:
n/a

@vincent99 and @brandond tried to help me out in the Rancher Slack channel.  Step two would seem to indicate creating a secret via the Rancher Cluster Manager UI.  Step 3 is actually referencing the chart deployment inside of the Cluster Explorer UI.  After following the breadcrumbs they gave me, I'm still unable to set up a Notifier that doesn't fail with x509: certificate signed by unknown authority.
It would really help if you could provide an example. It feels like I'm experiencing much of the same problems in https://github.com/rancher/rancher/issues/24272


Fix kind value type in bundle-resolver docs

Changes
When creating a TaskRun, the taskRef should use the kind task, not pipeline.
Submitter Checklist
As the author of this PR, please check off the items in this checklist:

[x] Has Docs included if any changes are user facing
[x] Has Tests included if any functionality added or changed
[x] Follows the commit message standard
[x] Meets the Tekton contributor standards (including
functionality, content, code)
[x] Has a kind label. You can add one by adding a comment on this PR that contains /kind <type>. Valid types are bug, cleanup, design, documentation, feature, flake, misc, question, tep
[x] Release notes block below has been updated with any user facing changes (API changes, bug fixes, changes requiring upgrade notices or deprecation warnings)
[x] Release notes contains the string "action required" if the change requires additional action from users switching to the new release

Release Notes
NONE

/release-note-none

/kind documentation

/retest check-pr-has-kind-label


create an admin service

An admin service that lets them see all registered users,
and lets them activate a newly registered user.

Admin services can be implemented in JSF. So we can use the existing one.


Build an Expression Tree from a given Postfix Expression in JAVA.

💥 Proposal
This is the implementation to build an Expression Tree from a given Postfix Expression in Java as a part of GSSOC'21.
Have you read the Contributing Guidelines on Pull Requests?
Yes

/assign


Server restarts while loading modules

Describe the Bug
This seems to be a random bug that occurs only when restarting the server/service and doesn't happen every time. Usually, when we restart our API, it'll begin, get through a few tasks, then automatically restart and throw one of these exceptions. It will usually do this once or twice before finally deciding everything is loaded (?) then run normally without any further issues until we restart again.
I believe the issue is specifically while loading the ActiveDirectory module and/or the pki module. I've seen other past issues similar to this, but they were much older and not necessarily the same.
Steps To Reproduce
Steps to reproduce the behavior:
We're not entirely sure what's causing it, but at a high level we have a server setup like so running as a service with NSSM.
try {

    Import-Module -Name Pode -MaximumVersion 2.10.1
    Import-Module -Name ActiveDirectory # Importing AD module before Start-PodeServer, as I've seen suggested in prior issues mirroring this

    Start-PodeServer -DisableTermination -Threads 30 {

       ### Standard setup code omitted ###

       $HttpCertCheck = Get-Item "Cert:\LocalMachine\My\$($cfgCertThumbprint)" # I believe this is what triggers importing pki

        Add-PodeSchedule -Name 'OnStartSchedule' -Cron '@minutely' -OnStart -Limit 1 -ScriptBlock {
            # Begin invoking various start up tasks to cache data, etc
            # Typically makes it through 1-3 of these before the exception occurs and auto restarts
        }

    }

} catch {
    $_.Exception | Out-File "E:\Logs\_UnhandledExceptions.log" -Append
}

Expected Behavior
We would expect the server to either always have the exception, or never have the exception during startup. Ultimately the server does fire up fine, but when it does this it usually takes several extra minutes to straighten itself out.
At the very least we'd like to understand the root cause even if it's not resolvable on the Pode side.
Logs
Here's the main exception we see -
ErrorRecord                 : Exception calling "BeginInvoke" with "0" argument(s): "Collection was modified; enumeration operation may not execute."
WasThrownFromThrowStatement : True
TargetSite                  : Void CheckActionPreference(System.Management.Automation.Language.FunctionContext, System.Exception)
Message                     : Exception calling "BeginInvoke" with "0" argument(s): "Collection was modified; enumeration operation may not execute."
Data                        : {[System.Management.Automation.Interpreter.InterpretedFrameInfo, System.Management.Automation.Interpreter.InterpretedFrameInfo[]]}
InnerException              : System.Management.Automation.CmdletInvocationException: Collection was modified; enumeration operation may not execute.
                               ---> System.InvalidOperationException: Collection was modified; enumeration operation may not execute.
                                 at System.Collections.Generic.List`1.Enumerator.MoveNextRare()
                                 at Microsoft.PowerShell.Commands.ModuleCmdletBase.LoadModuleManifest(String moduleManifestPath, ExternalScriptInfo manifestScriptInfo, Hashtable data, Hashtable localizedData, ManifestProcessingFlags manifestProcessingFlags, Version minimumVersion, Version maximumVersion, Version requiredVersion, Nullable`1 requiredModuleGuid, ImportModuleOptions& options, Boolean& containedErrors)
                                 at Microsoft.PowerShell.Commands.ModuleCmdletBase.LoadModule(PSModuleInfo parentModule, String fileName, String moduleBase, String prefix, SessionState ss, Object privateData, ImportModuleOptions& options, ManifestProcessingFlags manifestProcessingFlags, Boolean& found, Boolean& moduleFileFound)
                                 at Microsoft.PowerShell.Commands.ImportModuleCommand.ImportModule_LocallyViaName(ImportModuleOptions importModuleOptions, String name)
                                 at Microsoft.PowerShell.Commands.ImportModuleCommand.ProcessRecord()
                                 at System.Management.Automation.CommandProcessor.ProcessRecord()
                                 --- End of inner exception stack trace ---
                                 at System.Management.Automation.Runspaces.PipelineBase.Invoke(IEnumerable input)
                                 at System.Management.Automation.PowerShell.Worker.ConstructPipelineAndDoWork(Runspace rs, Boolean performSyncInvoke)
                                 at System.Management.Automation.PowerShell.Worker.CreateRunspaceIfNeededAndDoWork(Runspace rsToUse, Boolean isSync)
                                 at System.Management.Automation.PowerShell.CoreInvokeHelper[TInput,TOutput](PSDataCollection`1 input, PSDataCollection`1 output, PSInvocationSettings settings)
                                 at System.Management.Automation.PowerShell.CoreInvoke[TInput,TOutput](PSDataCollection`1 input, PSDataCollection`1 output, PSInvocationSettings settings)
                                 at System.Management.Automation.Runspaces.InitialSessionState.ProcessOneModule(Runspace initializedRunspace, String name, PSModuleInfo moduleInfoToLoad, String path, HashSet`1 publicCommands, List`1 processedModules)
                                 at System.Management.Automation.Runspaces.InitialSessionState.ProcessModulesToImport(Runspace initializedRunspace, IEnumerable moduleList, String path, HashSet`1 publicCommands, HashSet`1 unresolvedCmdsToExpose)
                                 at System.Management.Automation.Runspaces.InitialSessionState.BindRunspace(Runspace initializedRunspace, PSTraceSource runspaceInitTracer)
                                 at System.Management.Automation.Runspaces.LocalRunspace.DoOpenHelper()
                                 at System.Management.Automation.Runspaces.RunspaceBase.CoreOpen(Boolean syncCall)
                                 at System.Management.Automation.Runspaces.Internal.RunspacePoolInternal.CreateRunspace()
                                 at System.Management.Automation.Runspaces.Internal.RunspacePoolInternal.ServicePendingRequests(Object useCallingThreadState)
                                 at System.Management.Automation.Runspaces.Internal.RunspacePoolInternal.EnqueueCheckAndStartRequestServicingThread(GetRunspaceAsyncResult requestToEnqueue, Boolean useCallingThread)
                                 at System.Management.Automation.Runspaces.Internal.RunspacePoolInternal.BeginGetRunspace(AsyncCallback callback, Object state)
                                 at System.Management.Automation.PowerShell.CoreInvokeAsync[TInput,TOutput](PSDataCollection`1 input, PSDataCollection`1 output, PSInvocationSettings settings, AsyncCallback callback, Object state, PSDataCollection`1 asyncResultOutput)
                                 at System.Management.Automation.PowerShell.BeginInvoke[T](PSDataCollection`1 input, PSInvocationSettings settings, AsyncCallback callback, Object state)
                                 at CallSite.Target(Closure, CallSite, Object)
HelpLink                    :
Source                      : System.Management.Automation
HResult                     : -2146233087
StackTrace                  :    at System.Management.Automation.ExceptionHandlingOps.CheckActionPreference(FunctionContext funcContext, Exception exception)
                                 at System.Management.Automation.Interpreter.ActionCallInstruction`2.Run(InterpretedFrame frame)
                                 at System.Management.Automation.Interpreter.EnterTryCatchFinallyInstruction.Run(InterpretedFrame frame)
                                 at System.Management.Automation.Interpreter.EnterTryCatchFinallyInstruction.Run(InterpretedFrame frame)

The other exceptions are more specific. They could be entirely unrelated but do seem to always occur around the same time during these restart cycles. I've chopped most off for brevity -
ErrorRecord : Exception calling "BeginInvoke" with "0" argument(s): "The following error occurred while loading the extended type data file:
Error in TypeData "Microsoft.ActiveDirectory.Management.ADAuthenticationPolicySilo": The TypeAdapter was ignored because it already occurs.
Error in TypeData "Microsoft.ActiveDirectory.Management.ADAuthenticationPolicy": The TypeAdapter was ignored because it already occurs.
Error in TypeData "Microsoft.ActiveDirectory.Management.ADClaimTransformPolicy": The TypeAdapter was ignored because it already occurs.
Error in TypeData "Microsoft.ActiveDirectory.Management.ADTrust": The TypeAdapter was ignored because it already occurs.
Error in TypeData "Microsoft.ActiveDirectory.Management.ADResourcePropertyValueType": The TypeAdapter was ignored because it already occurs.

-----------------------

ErrorRecord : Exception calling "BeginInvoke" with "0" argument(s): "The following error occurred while loading the extended type data file:
Error in TypeData "System.Security.Cryptography.X509Certificates.X509Certificate2": The member PolicyId is already present.
Error in TypeData "System.Security.Cryptography.X509Certificates.X509Certificate2": The member EnrollmentServerEndPoint is already present.
Error in TypeData "System.Security.Cryptography.X509Certificates.X509Certificate2": The member EnrollmentPolicyEndPoint is already present.

Platform

OS: Windows Server 2022
Browser: N/A
Versions:

Pode: 2.10.1, but also noticed in previous versions
PowerShell: Noticed in 7.3.12 and 7.4.5 for sure
ActiveDirectory [<IP_ADDRESS>]
pki [<IP_ADDRESS>]

Hey @phdavis,
I've an idea as to what might be causing it based on the first exception, but need a lil' more info:

Are there any other Pode functions called within the Add-PodeSchedule scriptblock?
What happens if you try to import the pki module beforehand, similar to the AD one above?
Where you have the exception logged: $_.Exception | Out-File "E:\Logs\_UnhandledExceptions.log" -Append, could you also log $_.ScriptStackTrace as well? Hopefully this should output a stacktrace with line numbers in Pode scripts 😃

As a test, I can see you only want this to run once when the server starts? What happens if you replace the Schedule with Register-PodeEvent -Type Running -Name 'StartupTasks' -Scriptblock { ... } instead? Based on the first exception I think the Schedule might be loading other modules or state changes, which is altering a Collection while the Web Runspaces are spinning-up 🤔

Are there any other Pode functions called within the Add-PodeSchedule scriptblock?
Only some Invoke-PodeTask
What happens if you try to import the pki module beforehand, similar to the AD one above?
It took a bit, but I eventually got this exception

ErrorRecord                 : Exception calling "BeginInvoke" with "0" argument(s): "The following error occurred while loading the extended type data file:
                              Error in TypeData "System.Security.Cryptography.X509Certificates.X509Certificate2": The member PolicyId is already present.
                              Error in TypeData "System.Security.Cryptography.X509Certificates.X509Certificate2": The member EnrollmentServerEndPoint is already present.
                              Error in TypeData "System.Security.Cryptography.X509Certificates.X509Certificate2": The member EnrollmentPolicyEndPoint is already present.
                              "
WasThrownFromThrowStatement : True
TargetSite                  : Void CheckActionPreference(System.Management.Automation.Language.FunctionContext, System.Exception)
Message                     : Exception calling "BeginInvoke" with "0" argument(s): "The following error occurred while loading the extended type data file:
                              Error in TypeData "System.Security.Cryptography.X509Certificates.X509Certificate2": The member PolicyId is already present.
                              Error in TypeData "System.Security.Cryptography.X509Certificates.X509Certificate2": The member EnrollmentServerEndPoint is already present.
                              Error in TypeData "System.Security.Cryptography.X509Certificates.X509Certificate2": The member EnrollmentPolicyEndPoint is already present.
                              "
Data                        : {[System.Management.Automation.Interpreter.InterpretedFrameInfo, System.Management.Automation.Interpreter.InterpretedFrameInfo[]]}
InnerException              : System.Management.Automation.CmdletInvocationException: The following error occurred while loading the extended type data file:
                              Error in TypeData "System.Security.Cryptography.X509Certificates.X509Certificate2": The member PolicyId is already present.
                              Error in TypeData "System.Security.Cryptography.X509Certificates.X509Certificate2": The member EnrollmentServerEndPoint is already present.
                              Error in TypeData "System.Security.Cryptography.X509Certificates.X509Certificate2": The member EnrollmentPolicyEndPoint is already present.

                               ---> System.Management.Automation.RuntimeException: The following error occurred while loading the extended type data file:
                              Error in TypeData "System.Security.Cryptography.X509Certificates.X509Certificate2": The member PolicyId is already present.
                              Error in TypeData "System.Security.Cryptography.X509Certificates.X509Certificate2": The member EnrollmentServerEndPoint is already present.
                              Error in TypeData "System.Security.Cryptography.X509Certificates.X509Certificate2": The member EnrollmentPolicyEndPoint is already present.

                                 at System.Management.Automation.Runspaces.InitialSessionState.ThrowTypeOrFormatErrors(String resourceString, String errorMsg, String errorId)
                                 at System.Management.Automation.Runspaces.InitialSessionState.UpdateTypes(ExecutionContext context, Boolean updateOnly)
                                 at System.Management.Automation.Runspaces.InitialSessionState.Bind_UpdateTypes(ExecutionContext context, Boolean updateOnly)
                                 at System.Management.Automation.Runspaces.InitialSessionState.Bind(ExecutionContext context, Boolean updateOnly, PSModuleInfo module, Boolean noClobber, Boolean local, Boolean setLocation)
                                 at Microsoft.PowerShell.Commands.ModuleCmdletBase.LoadModuleManifest(String moduleManifestPath, ExternalScriptInfo manifestScriptInfo, Hashtable data, Hashtable localizedData, ManifestProcessingFlags manifestProcessingFlags, Version minimumVersion, Version maximumVersion, Version requiredVersion, Nullable`1 requiredModuleGuid, ImportModuleOptions& options, Boolean& containedErrors)
                                 --- End of inner exception stack trace ---
                                 at System.Management.Automation.Runspaces.PipelineBase.Invoke(IEnumerable input)
                                 at System.Management.Automation.PowerShell.Worker.ConstructPipelineAndDoWork(Runspace rs, Boolean performSyncInvoke)
                                 at System.Management.Automation.PowerShell.Worker.CreateRunspaceIfNeededAndDoWork(Runspace rsToUse, Boolean isSync)
                                 at System.Management.Automation.PowerShell.CoreInvokeHelper[TInput,TOutput](PSDataCollection`1 input, PSDataCollection`1 output, PSInvocationSettings settings)
                                 at System.Management.Automation.PowerShell.CoreInvoke[TInput,TOutput](PSDataCollection`1 input, PSDataCollection`1 output, PSInvocationSettings settings)
                                 at System.Management.Automation.Runspaces.InitialSessionState.ProcessOneModule(Runspace initializedRunspace, String name, PSModuleInfo moduleInfoToLoad, String path, HashSet`1 publicCommands, List`1 processedModules)
                                 at System.Management.Automation.Runspaces.InitialSessionState.ProcessModulesToImport(Runspace initializedRunspace, IEnumerable moduleList, String path, HashSet`1 publicCommands, HashSet`1 unresolvedCmdsToExpose)
                                 at System.Management.Automation.Runspaces.InitialSessionState.BindRunspace(Runspace initializedRunspace, PSTraceSource runspaceInitTracer)
                                 at System.Management.Automation.Runspaces.LocalRunspace.DoOpenHelper()
                                 at System.Management.Automation.Runspaces.RunspaceBase.CoreOpen(Boolean syncCall)
                                 at System.Management.Automation.Runspaces.Internal.RunspacePoolInternal.CreateRunspace()
                                 at System.Management.Automation.Runspaces.Internal.RunspacePoolInternal.ServicePendingRequests(Object useCallingThreadState)
                                 at System.Management.Automation.Runspaces.Internal.RunspacePoolInternal.EnqueueCheckAndStartRequestServicingThread(GetRunspaceAsyncResult requestToEnqueue, Boolean useCallingThread)
                                 at System.Management.Automation.Runspaces.Internal.RunspacePoolInternal.BeginGetRunspace(AsyncCallback callback, Object state)
                                 at System.Management.Automation.PowerShell.CoreInvokeAsync[TInput,TOutput](PSDataCollection`1 input, PSDataCollection`1 output, PSInvocationSettings settings, AsyncCallback callback, Object state, PSDataCollection`1 asyncResultOutput)
                                 at System.Management.Automation.PowerShell.BeginInvoke[T](PSDataCollection`1 input, PSInvocationSettings settings, AsyncCallback callback, Object state)
                                 at CallSite.Target(Closure, CallSite, Object)
HelpLink                    :
Source                      : System.Management.Automation
HResult                     : -2146233087
StackTrace                  :    at System.Management.Automation.ExceptionHandlingOps.CheckActionPreference(FunctionContext funcContext, Exception exception)
                                 at System.Management.Automation.Interpreter.ActionCallInstruction`2.Run(InterpretedFrame frame)
                                 at System.Management.Automation.Interpreter.EnterTryCatchFinallyInstruction.Run(InterpretedFrame frame)
                                 at System.Management.Automation.Interpreter.EnterTryCatchFinallyInstruction.Run(InterpretedFrame frame)

at Add-PodeRunspace, C:\Program Files\PowerShell\Modules\Pode\2.10.1\Private\Helpers.ps1: line 579
at <ScriptBlock>, C:\Program Files\PowerShell\Modules\Pode\2.10.1\Private\PodeServer.ps1: line 279
at Start-PodeWebServer, C:\Program Files\PowerShell\Modules\Pode\2.10.1\Private\PodeServer.ps1: line 278
at Start-PodeInternalServer, C:\Program Files\PowerShell\Modules\Pode\2.10.1\Private\Server.ps1: line 120
at Start-PodeServer, C:\Program Files\PowerShell\Modules\Pode\2.10.1\Public\Core.ps1: line 183
at <ScriptBlock>, E:\Server\server.ps1: line 21

Could you also log $_.ScriptStackTrace
I got this for the AD module importing, which appears to be pointing to the same thing
at Add-PodeRunspace, C:\Program Files\PowerShell\Modules\Pode\2.10.1\Private\Helpers.ps1: line 579
at <ScriptBlock>, C:\Program Files\PowerShell\Modules\Pode\2.10.1\Private\PodeServer.ps1: line 279
at Start-PodeWebServer, C:\Program Files\PowerShell\Modules\Pode\2.10.1\Private\PodeServer.ps1: line 278
at Start-PodeInternalServer, C:\Program Files\PowerShell\Modules\Pode\2.10.1\Private\Server.ps1: line 120
at Start-PodeServer, C:\Program Files\PowerShell\Modules\Pode\2.10.1\Public\Core.ps1: line 183
at <ScriptBlock>, E:\Server\server.ps1: line 21

Register-PodeEvent
When I did this I got this exception and as far as I can tell the server just restarts over and over with the same exception. I reverted back to using the original Schedule.
ErrorRecord                 : Exception calling "BeginInvoke" with "0" argument(s): "The following error occurred while loading the extended type data file:
                              Error in TypeData "System.Security.Cryptography.X509Certificates.X509Certificate2": The member PolicyId is already present.
                              Error in TypeData "System.Security.Cryptography.X509Certificates.X509Certificate2": The member EnrollmentServerEndPoint is already present.
                              Error in TypeData "System.Security.Cryptography.X509Certificates.X509Certificate2": The member EnrollmentPolicyEndPoint is already present.
                              "
WasThrownFromThrowStatement : True
TargetSite                  : Void CheckActionPreference(System.Management.Automation.Language.FunctionContext, System.Exception)
Message                     : Exception calling "BeginInvoke" with "0" argument(s): "The following error occurred while loading the extended type data file:
                              Error in TypeData "System.Security.Cryptography.X509Certificates.X509Certificate2": The member PolicyId is already present.
                              Error in TypeData "System.Security.Cryptography.X509Certificates.X509Certificate2": The member EnrollmentServerEndPoint is already present.
                              Error in TypeData "System.Security.Cryptography.X509Certificates.X509Certificate2": The member EnrollmentPolicyEndPoint is already present.
                              "
Data                        : {[System.Management.Automation.Interpreter.InterpretedFrameInfo, System.Management.Automation.Interpreter.InterpretedFrameInfo[]]}
InnerException              : System.Management.Automation.CmdletInvocationException: The following error occurred while loading the extended type data file:
                              Error in TypeData "System.Security.Cryptography.X509Certificates.X509Certificate2": The member PolicyId is already present.
                              Error in TypeData "System.Security.Cryptography.X509Certificates.X509Certificate2": The member EnrollmentServerEndPoint is already present.
                              Error in TypeData "System.Security.Cryptography.X509Certificates.X509Certificate2": The member EnrollmentPolicyEndPoint is already present.

                               ---> System.Management.Automation.RuntimeException: The following error occurred while loading the extended type data file:
                              Error in TypeData "System.Security.Cryptography.X509Certificates.X509Certificate2": The member PolicyId is already present.
                              Error in TypeData "System.Security.Cryptography.X509Certificates.X509Certificate2": The member EnrollmentServerEndPoint is already present.
                              Error in TypeData "System.Security.Cryptography.X509Certificates.X509Certificate2": The member EnrollmentPolicyEndPoint is already present.

                                 at System.Management.Automation.Runspaces.InitialSessionState.ThrowTypeOrFormatErrors(String resourceString, String errorMsg, String errorId)
                                 at System.Management.Automation.Runspaces.InitialSessionState.UpdateTypes(ExecutionContext context, Boolean updateOnly)
                                 at System.Management.Automation.Runspaces.InitialSessionState.Bind_UpdateTypes(ExecutionContext context, Boolean updateOnly)
                                 at System.Management.Automation.Runspaces.InitialSessionState.Bind(ExecutionContext context, Boolean updateOnly, PSModuleInfo module, Boolean noClobber, Boolean local, Boolean setLocation)
                                 at Microsoft.PowerShell.Commands.ModuleCmdletBase.LoadModuleManifest(String moduleManifestPath, ExternalScriptInfo manifestScriptInfo, Hashtable data, Hashtable localizedData, ManifestProcessingFlags manifestProcessingFlags, Version minimumVersion, Version maximumVersion, Version requiredVersion, Nullable`1 requiredModuleGuid, ImportModuleOptions& options, Boolean& containedErrors)
                                 --- End of inner exception stack trace ---
                                 at System.Management.Automation.Runspaces.PipelineBase.Invoke(IEnumerable input)
                                 at System.Management.Automation.PowerShell.Worker.ConstructPipelineAndDoWork(Runspace rs, Boolean performSyncInvoke)
                                 at System.Management.Automation.PowerShell.Worker.CreateRunspaceIfNeededAndDoWork(Runspace rsToUse, Boolean isSync)
                                 at System.Management.Automation.PowerShell.CoreInvokeHelper[TInput,TOutput](PSDataCollection`1 input, PSDataCollection`1 output, PSInvocationSettings settings)
                                 at System.Management.Automation.PowerShell.CoreInvoke[TInput,TOutput](PSDataCollection`1 input, PSDataCollection`1 output, PSInvocationSettings settings)
                                 at System.Management.Automation.PowerShell.Invoke[T]()
                                 at System.Management.Automation.Runspaces.InitialSessionState.ProcessOneModule(Runspace initializedRunspace, String name, PSModuleInfo moduleInfoToLoad, String path, HashSet`1 publicCommands, List`1 processedModules)
                                 at System.Management.Automation.Runspaces.InitialSessionState.ProcessModulesToImport(Runspace initializedRunspace, IEnumerable moduleList, String path, HashSet`1 publicCommands, HashSet`1 unresolvedCmdsToExpose)
                                 at System.Management.Automation.Runspaces.InitialSessionState.BindRunspace(Runspace initializedRunspace, PSTraceSource runspaceInitTracer)
                                 at System.Management.Automation.Runspaces.LocalRunspace.DoOpenHelper()
                                 at System.Management.Automation.Runspaces.RunspaceBase.CoreOpen(Boolean syncCall)
                                 at System.Management.Automation.Runspaces.Internal.RunspacePoolInternal.CreateRunspace()
                                 at System.Management.Automation.Runspaces.Internal.RunspacePoolInternal.ServicePendingRequests(Object useCallingThreadState)
                                 at System.Management.Automation.Runspaces.Internal.RunspacePoolInternal.EnqueueCheckAndStartRequestServicingThread(GetRunspaceAsyncResult requestToEnqueue, Boolean useCallingThread)
                                 at System.Management.Automation.Runspaces.Internal.RunspacePoolInternal.BeginGetRunspace(AsyncCallback callback, Object state)
                                 at System.Management.Automation.PowerShell.CoreInvokeAsync[TInput,TOutput](PSDataCollection`1 input, PSDataCollection`1 output, PSInvocationSettings settings, AsyncCallback callback, Object state, PSDataCollection`1 asyncResultOutput)
                                 at System.Management.Automation.PowerShell.BeginInvoke[T](PSDataCollection`1 input, PSInvocationSettings settings, AsyncCallback callback, Object state)
                                 at CallSite.Target(Closure, CallSite, Object)
HelpLink                    :
Source                      : System.Management.Automation
HResult                     : -2146233087
StackTrace                  :    at System.Management.Automation.ExceptionHandlingOps.CheckActionPreference(FunctionContext funcContext, Exception exception)
                                 at System.Management.Automation.Interpreter.ActionCallInstruction`2.Run(InterpretedFrame frame)
                                 at System.Management.Automation.Interpreter.EnterTryCatchFinallyInstruction.Run(InterpretedFrame frame)
                                 at System.Management.Automation.Interpreter.EnterTryCatchFinallyInstruction.Run(InterpretedFrame frame)

at Add-PodeRunspace, C:\Program Files\PowerShell\Modules\Pode\2.10.1\Private\Helpers.ps1: line 579
at Start-PodeTimerRunspace, C:\Program Files\PowerShell\Modules\Pode\2.10.1\Private\Timers.ps1: line 61
at Start-PodeInternalServer, C:\Program Files\PowerShell\Modules\Pode\2.10.1\Private\Server.ps1: line 70
at Start-PodeServer, C:\Program Files\PowerShell\Modules\Pode\2.10.1\Public\Core.ps1: line 183
at <ScriptBlock>, E:\Server\server.ps1: line 21

I had some more time to try narrowing this down. It seems the worst of it is directly related to pki. After commenting out all the code, it stops doing the crash loop. I was then able to start uncommenting some stuff. The very first line when running manually auto imports pki
if (Test-Path "Cert:\LocalMachine\My\$CertThumbprint"){}
Before running command

After running command

I noticed it was Manifest instead of Script (if that matters) and after looking, there's really no files related to pki itself. I decided to try ripping the code out of server.ps1 and placed it into its own Pode task, then added that task to our OnStartSchedule which seems to have resolved the exceptions related to pki. We get the information we need on start and it doesn't appear to cause the startup loop anymore.
We are still getting the ActiveDirectory and the Collection was modified; enumeration operation may not execute. exceptions, but they're less common and easy enough to ignore for now.

I've just tried reproducing this myself, but I can't get it to throw any errors - all loads for me.
While researching the error, I found that the Collection was modified; enumeration operation may not execute is being thrown by Import-Module itself, and this only normally happens if the module's manifest is being manipulated by another process. I can't see anything in PKI or AD which would do this, so wondering if you might have any other modules loaded when Pode starts?
If not, one option could be that I add a config item to force all Runspaces to load sequentially rather than parallel/async. That might resolve, or a least further reduce, the occurrence of the error 🤔

Thank you for digging! Based on what I can see it looks like these are getting loaded at start. These have been in use since day one more or less, so I can't really narrow it down to any in particular.
Az.Accounts
Az.KeyVault
SqlServer
VMware.Vim
VMware.VimAutomation.Cis.Core
VMware.VimAutomation.Common
VMWare.VimAutomation.Sdk


Let engineering goggles (renamed to mesons) see through walls

About the PR

mesons now let you see anything that isn't an item or mob through walls
Why / Balance

it's cool
Technical details

Media

[ ] I have added screenshots/videos to this PR showcasing its changes ingame, or this PR does not require an ingame showcase

Breaking changes

Changelog

:cl: notquitehadouken (freshlysqueezedpain)

add: Engineering goggles now let you see certain things through walls.

what feature freeze i can finish this in 4 days HAHAHAHAHA

will you rename the goggles back to meson scanners?

will you rename the goggles back to meson scanners?

should i?

will you rename the goggles back to meson scanners?

should i?

iirc mesons have been synonymous with "seeing walls through walls" so yeah

Time to combine this with a T-Ray for Engi Omnisience

The original post additionally needs footage of the new mesons in action.

i will do this once they function

that should have an accessibility toggle and/or only be used for out of view things, its really jarring

i like this better anyway

I like this better anyway

Assuming that this is a toggle I like the gameboy green tint purely because it helps with low light and discourages having it on 24/7

Assuming that this is a toggle, I like the gameboy green tint purely because it helps with low light and discourages having it on 24/7

lighting is disabled :godmode:

 i like this better anyway

having no lighting is literally so based, low end people can now run an easy 60 fps with the gameboy vision

One issue I immediately spot is that I can't see any wires in those maints

One issue I immediately spot is that I can't see any wires in those maints

that is because there are no wires in those maints

i did not complete it in time :trollface:

i'll reopen it once the feature freeze is over

question: would this even get merged if i did complete it

in the state last posted i imagine no, its just free wallhacks

i think it will be fine if its balanced such that you can only see structural things or anything visible with a t-ray

@notquitehadouken yo can I use this code for RMC


Rewrite

Changed license from ISC to MIT.
Changed versioning from SemVer to PVP.
Added devcontainer.
Set up CI for GHC 9.0, 9.2, and 9.4.
Changed formatter from Brittany to Ormolu.
Changed build tool from Stack to Cabal.
Added pedantic flag.
Added (currently empty) test suite.

The developer documentation for SDKs is here: https://develop.sentry.dev/sdk/
It might be nice to look at the raven-haskell package, which also integrates with Sentry.
And drawing from other languages, it could be good to look at the sentry crate for Rust.

Somehow I hadn't seen this page before: https://develop.sentry.dev/sdk/event-payloads/types/

This covers nearly all the types described by the Sentry schema. The two pieces that aren't fully scoped out are debug_meta and contexts. They both technically have more specific schemas, they also have a catch-all fallback. I decided it wasn't worth the trouble to add types for types like DeviceContext.
The last thing I'm considering before merging this is changing Maybe Text into just Text. I doubt there's much appreciable difference between Nothing and Just "". However I need to test in order to be sure.


Don't Merge! PR real time test for source branch full build

Docs Build status updates of commit 25e0809:
:clock10: Full build: the average full build time is 5 min(s) 57 sec(s), this is based on the last 667 build(s) for this repository.

Docs Build status updates of commit 25e0809:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details
Dependent Files

docfx.json
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Crash on Android 10 when trying to open a book

Issue / Feature - Issue
FolioReader version - 0.5.4
FolioReader Stock / Modified - Stock
Android SDK - 29
Mobile / Tablet / Emulator Info - emulator + tablet
Crash / Error - Crash
Steps to reproduce / Describe in detail -

Install the reader app.
Pass a file to it,
App crashed with an error:

2020-07-14 14:56:33.207 7353-7353/test.app E/Error: Could not generate container
    java.io.FileNotFoundException: /storage/emulated/0/Download/book.epub (Permission denied)
        at java.util.zip.ZipFile.open(Native Method)
        at java.util.zip.ZipFile.<init>(ZipFile.java:265)
        at java.util.zip.ZipFile.<init>(ZipFile.java:187)
        at java.util.zip.ZipFile.<init>(ZipFile.java:158)
        at org.readium.r2.streamer.container.ContainerEpub.<init>(ContainerEpub.kt:56)
        at org.readium.r2.streamer.parser.EpubParser.generateContainerFrom(EpubParser.kt:55)
        at org.readium.r2.streamer.parser.EpubParser.parse(EpubParser.kt:71)
        at com.folioreader.ui.activity.FolioActivity.initBook(FolioActivity.kt:477)
        at com.folioreader.ui.activity.FolioActivity.setupBook(FolioActivity.kt:447)
        at com.folioreader.ui.activity.FolioActivity.onCreate(FolioActivity.kt:296)
        at android.app.Activity.performCreate(Activity.java:7802)
        at android.app.Activity.performCreate(Activity.java:7791)
        at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1299)
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3245)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3409)
        at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:83)
        at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
        at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2016)
        at android.os.Handler.dispatchMessage(Handler.java:107)
        at android.os.Looper.loop(Looper.java:214)
        at android.app.ActivityThread.main(ActivityThread.java:7356)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:930)

Adding  and granting it using the adb shell pm grant ... command does not solve the problem. Maybe the permission should be added to the Folio's manifest.

Make sure you have given storage read permission to your app.

Did you get a fix to it ? I'm getting the same problem opening up EPUB files ! It opens PDF perfectly.

Yeah, I'm getting the same problem when trying to open from Assets.

Make sure you have given storage read permission to your app.

Yes i did

Did yo guys find any solution ?

No, I eventually Stopped using FolioReader.
On Mon, May 24, 2021, 12:18 AM Nikki @.***> wrote:

Did yo guys find any solution ?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/FolioReader/FolioReader-Android/issues/464#issuecomment-846745281,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AKHXI465KLWFQZAFKHYTIXTTPHOSBANCNFSM4OZOMYAQ
.

Are you using any other ePub reader ? Something better than this and is updated ?

No, I had to use Bartesc pdf reader library, If you find an updated one.
Please let me know too!
On Mon, May 24, 2021, 10:47 PM Nikki @.***> wrote:

Are you using any other ePub reader ? Something better than this and is
updated ?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/FolioReader/FolioReader-Android/issues/464#issuecomment-847507303,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AKHXI4Y3VXMB6V62WWZ2WPLTPMMUZANCNFSM4OZOMYAQ
.

I had the same problem, finally I have solved this issue for more information check this comment


Refactor parser to convert filters to facets

Change ermrestjs parser to convert filter into a facet. In the process we should remove all the filter related APIs.
This requires making changes to the _processSingleFilterString and _processMultiFilterString functions in parser.js.

I implemented this in #598. We don't want to always change filter to facet. Only in case of faceting APIs this change has uses. Therefore it has been added to the Reference.facetColumns. If facet equivalent of filter was understandable by current implementation of faceting, we will change the filters to facet.


[vcpkg] Emit parse errors to match '::: error: ' for better IDE compatibility

See title.
The built-in error log parsers in Visual Studio (MSBuild) expect the filename to come first on the error line. With this change, vcpkg parse errors are picked up by the error log and you can jump directly to the offending file location via double-click.
https://github.com/dotnet/msbuild/blob/ec6ed832e6a4adf94a2e6ff7e2f34d8e2da1cc05/src/Shared/CanonicalError.cs#L78

The failures on x64-linux and x64-osx:
../src/vcpkg-test/json.cpp:236: FAILED:
  REQUIRE( res.error()->format() == R"(Error: filename:2:1: Unexpected character; expected property name
   on expression: ,
                  ^
)" )
with expansion:
  "filename:2:1: error: Unexpected character; expected property name
     on expression: ,
                    ^
  "
  ==
  "Error: filename:2:1: Unexpected character; expected property name
     on expression: ,
                    ^
  "

The failures on x64-linux and x64-osx:
../src/vcpkg-test/json.cpp:236: FAILED:
  REQUIRE( res.error()->format() == R"(Error: filename:2:1: Unexpected character; expected property name
   on expression: ,
                  ^
)" )
with expansion:
  "filename:2:1: error: Unexpected character; expected property name
     on expression: ,
                    ^
  "
  ==
  "Error: filename:2:1: Unexpected character; expected property name
     on expression: ,
                    ^
  "


SBT can't find JWT libraries.

Are you looking for help?
Hi! Faced a small issue, sbt can't find jwt-core and jwt-api without adding the required resolver (found it in the source code)
resolvers += "Atlassian Releases" at "https://maven.atlassian.com/public/"
Seems like required versions of the libraries are not present on maven.
Silhouette Version (4.0.x / etc)
7.0.2

don't have this issue. Is it in your project? Because in this repo this resolver is mentioned here: https://github.com/honeycomb-cheesecake/play-silhouette/blob/master/project/Dependencies.scala#L18

Yep, it's in my project. I've created it using a Play Framework template provided by IntelliJ Idea to study the library

Hi @AldusLorde, are you still having this issue? I've not been able to reproduce this.

Not the original reporter of this - but I can confirm, I found the same issue.  Using play-silhouette as a library in a new Play project (created using sbt new playframework/play-scala-seed.g8), on adding the dependencies for silhouette, I get errors from SBT about being unable to find jwt-core and jwt-api.
Be aware - the issue can also be avoided by adding the appropriate repos into your local .sbt/repositories file, or by having (corporate) repos there that mirror the Atlassian ones...

Reproduced on a fresh PC - for what it's worth, this was a Windows PC, using SBT 1.6.2 (latest installable binaries for SBT)
Please see https://github.com/Rocketeer007/play-silhouette-test

Fixed by #30


Working with PackedSequence issues

Firstly I'd like to thank you for the great job you have done with skorch - I've found it very useful!
However, I have 2 observations.
Lately, while I've been trying to work with sequence data with a varying length I decided to use PackedSequence data from torch.
The first thing that is easy to fix is the to_tensor function from skorch.utility - although it's docstring states it supports PackedSequence, as this class is a namedtuple under the hood, it is also an instance of a tuple, and as so the PackedSequence is being handled as a tuple.
import torch

seq = [torch.rand(4,1) for _ in range(5)]
pack_seq = torch.nn.utils.rnn.pack_sequence(seq)

print(isinstance(pack_seq, tuple))
print(isinstance(pack_seq, torch.nn.utils.rnn.PackedSequence)

This can be easily fixed moving more specific condition of being a PackedSequence before the condition of being a tuple.
The second thing is more of a thought on handling a varying length data by skorch - the most convenient way I found to handle it by Pytorch is by using a list of Tensors and then converting it to mentioned earlier PackedSequence. The problem arises with the all the internal skorch lenght checking functions - they rise error when the data have inconsistent lenght, what is an expected situation sometimes like when dealing with varying length sequences. I managed to overwrite all the places where it is done ( in Dataset init(), in CVSplit call() and NeuralNet in fit_loop()) because they all call skorch.utils.get_len() the function which unpacks the data to check the lengths - as this function is defined in the package directory there is no other way than overriding all the functions that call it to change its default behaviour.
I was wondering do you think it would be possible to:
a) give an option to pass on checking the length in all listed structures by one parameter (something like check_len =False)
b) enable the user to pass a function responsible for checking the lenghts of passed structures
I think the second option is much more elegant, but I am not sure how it could be best done.
Hope I described clearly my points if anything is unclear I can provide more details if needed.

Thank you for using skorch.
Regarding your first point, I will look at it on Monday. If you think you know how to fix that, I also invite you to make a PR.
Regarding your second point, do I get it right that you pass your proper data and your array of lengths as a list and then get problems because the list does not have the same length as your y data? If so, I would recommend you pass your data as a dictionary:
class MyModule(nn.Module):
    ...
    def forward(self, X, lengths):  # dictionary keys are passed as keyword arguments
        ....

X = {'X': data, 'lenghts': lengths}

This is should get you the correct behavior as long as data, lengths and y have the same len. If you mean something else, could you please elaborate or post a minimal code example?

@Naffer11 Did you make progress?

Hey,
thanks for such fast reply, and sorry for not responding before.
It may be my mistake to put separate thoughts into one issue. Saw your PR #335, and although I had in mind some other solution, this seem to be much more elegant! I think it will fix my issue, and I in some free time I will try to open a separate issue for the second thought I had, with the reproducible example.


add applied_date column to job tracker spreadsheet

also, how to handle multiple contacts at one company? 1-3 contact columns or just keep it one person?


Allow manually testing integrations fixture

Goal
Some changes are required in the integrations fixture in order to make it easier to run manually. I've also added a script that runs the fixture and starts one of the queuing libraries:
# run the rails_integrations fixture with sidekiq
$ ./features/fixtures/run-rails-integrations

# run the rails_integrations fixture with delayed_job
$ ./features/fixtures/run-rails-integrations delayed_job

Goal
Some changes are required in the integrations fixture in order to make it easier to run manually. I've also added a script that runs the fixture and starts one of the queuing libraries:
# run the rails_integrations fixture with sidekiq
$ ./features/fixtures/run-rails-integrations

# run the rails_integrations fixture with delayed_job
$ ./features/fixtures/run-rails-integrations delayed_job

Seems like this should be detailed in TESTING.md for future visitors?