Correct string() type use in Typespec Drills exercise

In the file exercises/typespec_drills.livemd in the "Custom Types" exercise the Example Solutions use a typespec of string() which throws a warning of:

warning: string() type use is discouraged. For character lists, use charlist() type, for strings, String.t()

These suggestions should be updated to String.t() in keeping with the warning and previous exercise.

Correct! Good catch.


Ajout cci campus 28

@nocilex41 Thank you for your patience while waiting for a review and processing your request. Pull request merged.


IOS Safari - Confirm Task button changes position due to virtual keyboard and jitters

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Action Performed:

Go to STG on IOS Safari.
Click on Assign Task from FAB.
Enter task name and press Next.
Notice the position of Confirm Task button and the jittering effect.
Add a assignee to the task and notice the same behaviour of the Confirm Task button.

Expected Result:
The Confirm Task button should not change the change position and the jittering effect should not be there similar to the behaviour in Android Chrome.
Actual Result:
The Confirm Task button changes position and a jittering effect occurs.
Workaround:
Can the user still use Expensify without this being fixed? Have you informed them of the workaround?
Platforms:

Which of our officially supported platforms is this issue occurring on?

[ ] Android / native
[ ] Android / Chrome
[ ] iOS / native
[x] iOS / Safari
[ ] MacOS / Chrome / Safari
[ ] MacOS / Desktop

Version Number:
Reproducible in staging?: needs reproduction ( unable to reproduce by Applause)
Reproducible in production?: needs reproduction
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos: Any additional supporting documentation
https://github.com/Expensify/App/assets/43996225/c534f2bd-38b8-4570-b9fd-d2a78d8330f4
Expensify/Expensify Issue URL:
Issue reported by: @Talha345
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1690907843508769
View all open jobs on GitHub

I believe this is a duplicate of this issue - https://github.com/Expensify/App/issues/23481


Updated docs to follow new structure of gateways within Helm's values.yaml

Following the structure change in values.yaml after https://github.com/istio/istio/pull/6350 there might be places in the docs that may need to be updated.
E.g. command where user specifically enable/disable (ingress/egress)gateway.

/assign @ymesika

Searching the docs for ingressgateway or egressgateway brought no relevant results.
This affects the command in #1512 which will be updated.


Fix configmaps fix - remove comma

Description
Follow up to https://github.com/microsoft/FluidFramework/pull/19191 where I failed to remove an invalid comma.
Reviewer Guidance
The review process is outlined on this wiki page.

Sorry @dhr-verma , should be the last one 😄 .


[Forms][MapView]  Initialization of MyLocation or way to update MyLocation without triggering animation ?(MyLocationLayer) [Feature Request/Question]

Hello Mapsui's developers !
Is there a way to initialize the MyLocation property (Mapsui.UI.Objects.MyLocationLayer) to anything beside Position(0, 0) or to update it without triggering the animation ?
I cannot find a way to skip the initial animation from Position(0,0) to the actual device location.
https://github.com/Mapsui/Mapsui/blob/b13375c852fd64e49b7bbe8851918316738c2849/Mapsui.UI.Forms/Objects/MyLocationLayer.cs#L147
The problem is if you set MyLocationEnabled and MyLocationFollow properties to true on the MapView immediately after calling MapView.MyLocationLayer.UpdateMyLocation(Position pos) and the map is pretty much zoomed, the user can witness a very fast transition over a long distance from atlantic ocean south east of african coast (Longitude=Zero,Latitude=Zero) to his/her position.
My current workaround is to let the MyLocationLayer disabled (hidden) or MyLocationFollow to false until the first animation is completed, given that I know the animation last for 3 seconds.
Please, let me know if there is another way around this.
(I can also create a pull request if you want)
api suggestions:
void SetInitialPosition(Position pos) { /* ... */ }
/* or */
void UpdateMyLocation(Position pos, bool animated=true) { /* ... */ }
/* or */
void UpdateMyLocationWithoutAnimation(Position pos) { /* ... */ }

implementation suggestion
/// <summary>
/// Updates my location
/// </summary>
/// <param name="newLocation">New location</param>
public void UpdateMyLocation(Position newLocation, bool animated=true)
{
    if (!MyLocation.Equals(newLocation))
    {
        // We have a location update, so abort last animation
        if (mapView.AnimationIsRunning(animationMyLocationName))
            mapView.AbortAnimation(animationMyLocationName);

        if (animated)
        {
            // Save values for new animation
            animationMyLocationStart = MyLocation;
            animationMyLocationEnd = newLocation;

            var animation = new Animation((v) =>
            {
                var deltaLat = (animationMyLocationEnd.Latitude - animationMyLocationStart.Latitude) * v;
                var deltaLon = (animationMyLocationEnd.Longitude - animationMyLocationStart.Longitude) * v;
                var modified = InternalUpdateMyLocation(new Position(animationMyLocationStart.Latitude + deltaLat, animationMyLocationStart.Longitude + deltaLon));
                // Update viewport
                if (modified && mapView.MyLocationFollow && mapView.MyLocationEnabled)
                    mapView._mapControl.Navigator.CenterOn(MyLocation.ToMapsui());
                // Refresh map
                if (mapView.MyLocationEnabled && modified)
                    mapView.Refresh();
            }, 0.0, 1.0);

            // At the end, update viewport
            animation.Commit(mapView, animationMyLocationName,
                             100, 3000,
                             finished: (s, v) => mapView.Map.RefreshData(mapView._mapControl.Viewport.Extent, mapView._mapControl.Viewport.Resolution, true));
        }
        else
        {
            var modified = InternalUpdateMyLocation(newLocation);
            // Update viewport
            if (modified && mapView.MyLocationFollow && mapView.MyLocationEnabled)
                mapView._mapControl.Navigator.CenterOn(MyLocation.ToMapsui());
            // Refresh map
            if (mapView.MyLocationEnabled && modified)
                mapView.Refresh();
        }
    }
}

Sorry, saw only the first part of your issue. So I added a new constructor, which has the possibility to add a default value for the position. See #801.

Now added flags as you suggested in UpdateMyLocation and UpdateMyDirection.

I assume this is fixed.


The system cannot find the specified path ,Although the rider link seems to have been successfully added to the UE, I don't know whether this error will have other effects

Loading FilterPluginAndroid.ini
Loading FilterPluginHoloLens.ini
Loading FilterPluginIOS.ini
Loading FilterPluginLinux.ini
Loading FilterPluginLinuxArm64.ini
Loading FilterPluginTVOS.ini
Loading FilterPluginWin64.ini
BUILD SUCCESSFUL
AutomationTool executed for 0h 4m 24s
AutomationTool exiting with ExitCode=0 (Success)
Updating environment variables set by a Turnkey sub-process
系统找不到指定的路径。
系统找不到指定的路径。
RiderLink plugin installed
RiderLink plugin was installed to: D:\Test\UE\MyTest\Plugins\Developer\RiderLink
Refreshing project files
Log file: C:\Users\44570\AppData\Local\UnrealBuildTool\Log_GPF.txt
Some Platforms were skipped due to invalid SDK setup: IOS, Android, Linux, LinuxArm64, TVOS.
See the log file for detailed information
Discovering modules, targets and source code for project...
Binding IntelliSense data... 100%
Writing project files... 100%

Hello, @RookieCN-jpg
These errors do not affect operation. Internal problems with calling Unreal scripts. Will be fixed in one of the next updates.


Fix missed deletion events when reconnecting to/disconnecting from remote clusters (identities)

Follow up of https://github.com/cilium/cilium/pull/25499 targeting identities synchronization. Please refer to the above PR and the commit descriptions for additional information.
Related: https://github.com/cilium/cilium/issues/24740
Related: https://github.com/cilium/cilium/pull/25499
Fix missed deletion events when reconnecting to/disconnecting from remote clusters (identities)

/test

Code changes LGTM.
Given this fixes issues in bfe7b88 ("clustermesh: correctly remove remoteCache on connection disruption") from PR #23532 which was backported to 1.13 (and also affects 1.11 and 1.12) I wonder whether this PR should be labeled backported accordingly as well?

I personally think that backporting is quite risky in this case, since the overall fix is a fairly large change which also depends on https://github.com/cilium/cilium/pull/25388, https://github.com/cilium/cilium/pull/25499 and https://github.com/cilium/cilium/pull/25675 (and likely more). I'd be more comfortable not marking it as needs-backport for the moment, and re-evaluate once all pieces are in.

/ci-aks

/test-1.26-net-next

Rebased onto main to fix conflicts.

/test

/test-1.26-net-next

/ci-ginkgo

/ci-aks

Conformance ginkgo failed with https://github.com/cilium/cilium/issues/25964 (I'm not rerunning it since it is failing almost consistently in all PRs, and the workflow is not marked as required at the moment). All other checks are green.


XsltPipe (IOException) Stream closed

Describe the issue
I am running an XSLT with a few parameters but it fails with IOException Stream Closed.
ibis4navigator (2).log
c
When I look in Ladybug and try to inspect the parameters, one of the parameters shows the following message:

This sessionKey is created and filled a few pipes earlier:

For some odd reason it still throws a streaming exception:

Reporter
Laurens

To Reproduce
Steps to reproduce the behavior:
Please contact me
Screenshots
If applicable, add screenshots to help explain your problem.
Configuration
Please provide the configuration of the Pipe or Receiver with the problem.

Input
Please provide an example of the input message.
Alternatively, provide a Ladybug report.

Environment
FF! 7.7-20210525.083818: Ibis4Navigator
Running on srazzapp0474.insim.biz using IBM WebSphere Application Server/8.5
Java Version: Java(TM) SE Runtime Environment (<IP_ADDRESS> - pxa6480sr6-20191107_01(SR6))
Heap size: 1088M, total JVM memory: 2048M
Free disk space: 9GB, total disk space: 10GB
Up since: 2021-06-04 12:36:54 (2d)

Additional Environment

DBMS: [e.g. Oracle, MSSQL, MariaDB, MySql, PostgreSQL]
Browser: [e.g. Chrome, Safari, Edge, Firefox]

Additional Context
Add any other context about the problem here. (f.e. ladybug report / test adapter with larva test)

Could you upgrade to the latest version of the framework and retest? This problem might be already solved by PR #1867

Issue also occurs with FF! 7.7-20210604.145654

Turns out that the stream is passed as input to a sub adapter and has been closed by the sub adapter.
Fixed by adding preserveInput=true so stream is not passed to sub adapter and stays open.


prepare for release 3.1.0

Summary

Add changelog changes

Test plan
Issues

Coverage remained the same at 98.194% when pulling edd5c15e14599e8795a84c443f9d5ba87f4a46e2 on jae/prepare-3.1.0 into 1bb8c3284c3433b6588859a8effda42d1a956bd2 on master.

Coverage remained the same at 98.194% when pulling edd5c15e14599e8795a84c443f9d5ba87f4a46e2 on jae/prepare-3.1.0 into 1bb8c3284c3433b6588859a8effda42d1a956bd2 on master.

Coverage remained the same at 98.194% when pulling edd5c15e14599e8795a84c443f9d5ba87f4a46e2 on jae/prepare-3.1.0 into 1bb8c3284c3433b6588859a8effda42d1a956bd2 on master.


Fix session.clear()

session.clear currently fails to clear anything if session hadn't been previously loaded
It's a bit ugly to issue a new ID if the session hadn't been loaded yet, but this seems to do the job.
Fixes: 194d5b1e891c ("implement lazy sessions")

I just noticed our logout test stopped working when I upgraded tower sessions, and it turns out session.clear() apparently broke somewhere between 0.7.0 and 0.8.0
After some investigation the problem seems to be that clear() in tower-sessions-core/src/session.rs doesn't do anything if the session hadn't been loaded before, so while it sets the modified flag it'll just reload the session as it was and save it right back.
You can reproduce on examples/counter.rs as of today's master with the following patch:
diff --git a/examples/counter.rs b/examples/counter.rs
index 7cf373c44164..3da474d50020 100644
--- a/examples/counter.rs
+++ b/examples/counter.rs
@@ -7,7 +7,7 @@ use tower_sessions::{Expiry, MemoryStore, Session, SessionManagerLayer};

 const COUNTER_KEY: &str = "counter";

-#[derive(Default, Deserialize, Serialize)]
+#[derive(Default, Deserialize, Serialize, Debug)]
 struct Counter(usize);

 #[tokio::main]
@@ -17,7 +17,10 @@ async fn main() {
         .with_secure(false)
         .with_expiry(Expiry::OnInactivity(Duration::seconds(10)));

-    let app = Router::new().route("/", get(handler)).layer(session_layer);
+    let app = Router::new()
+        .route("/", get(handler))
+        .route("/del", get(clear))
+        .layer(session_layer);

     let addr = SocketAddr::from(([127, 0, 0, 1], 3000));
     let listener = tokio::net::TcpListener::bind(&addr).await.unwrap();
@@ -31,3 +34,9 @@ async fn handler(session: Session) -> impl IntoResponse {
     session.insert(COUNTER_KEY, counter.0 + 1).await.unwrap();
     format!("Current count: {}", counter.0)
 }
+
+async fn clear(session: Session) -> impl IntoResponse {
+    session.clear().await;
+    let counter = session.get::<Counter>(COUNTER_KEY).await;
+    format!("Cleared, got {:?}", counter)
+}

$ curl -w '\n' -c /tmp/cookie -b /tmp/cookie http://localhost:3000
Current count: 0
$ curl -w '\n' -c /tmp/cookie -b /tmp/cookie http://localhost:3000
Current count: 1
$ curl -w '\n' -c /tmp/cookie -b /tmp/cookie http://localhost:3000
Current count: 2
$ curl -w '\n' -c /tmp/cookie -b /tmp/cookie http://localhost:3000
Current count: 3
$ curl -w '\n' -c /tmp/cookie -b /tmp/cookie http://localhost:3000/del
Cleared, got Ok(Some(Counter(4)))
$ curl -w '\n' -c /tmp/cookie -b /tmp/cookie http://localhost:3000
Current count: 4
$ curl -w '\n' -c /tmp/cookie -b /tmp/cookie http://localhost:3000/del
Cleared, got Ok(Some(Counter(5)))
$ curl -w '\n' -c /tmp/cookie -b /tmp/cookie http://localhost:3000
Current count: 5

Replacing clear as follow seems to fix the issue, but it's a bit wasteful to load the session just to clear it back:
    pub async fn clear(&self) {
        if let Ok(mut guard) = self.get_record().await {
            if let Some(record) = guard.as_mut() {
                record.data.clear()
            }
        }

        self.is_modified.store(true, atomic::Ordering::Release);
    }

So I went for the hammer of generating a new id instead -- we could perhaps have a create_record_with_id helper or something instead as it feels a bit ugly, but that'll do for now.
I also wanted to add a test for this, but we don't seem to have any test aside of the doc tests? And I didn't want to clutter the test by loading the session back after having saved it; please tell me if there's somewhere I could add something if you'd like.

The Django implementation does not clear data from the backend.
In authentication flows, typically we'd use flush when logging out as this will update the backend.
Are you sure clear is the method you want to be using for your specific use case?

I've pushed a change to your branch which should address clear before load. Once this passes the test suite, I'll merge it in and cut a new release.

As far as I understand either work as even flush will update the backend when returning to the service layer, which will notice the session had been modified and not empty (because of the id)

The gotcha is that the session will not be deleted from the backend within the scope of resolving the request that called clear. In the case of flush, both clear and delete are called, so you can guarantee that the session won't be reused.


fix 12614, waitingForPingResponse needs to be modified with volatile for concurrent sence

Fixes #12614
Master Issue: #12614
waitingForPingResponse was used in PulsarHandler for check if or not close connection.
and it was set value in different thread , so it must to be modified with volatile.

@baomingyu Oh sorry, I see it, one is the IO thread, another one is the executor of the ChannelHandlerContext


NIAD-1188: changing default mailbox and fixing issue #106

Fixing issue: https://github.com/nhsconnect/integration-adaptor-lab-results/issues/106
Description
Please explain the changes you have made here.
Jira Ticket
Please add a link to the related Jira ticket (if any).
Checklist
These are items (excluding GitHub Checks) which should be confirmed before a branch is ready to merge.

[ ] Acceptance Criteria met
[ ] Commit messages are meaningful
[ ] Manually tested
[ ] Self-reviewed your code
[ ] Code reviewed from two other developers
[ ] If your pull request depends on any other, please link them in the description
[ ] main branch is passing/green on CI
[ ] Add/update any relevant documentation

There's been a new mailbox ID recipient<PHONE_NUMBER>00001) added in the main branch so we need the main branch merged in


kontena cloud platform use without any platforms explodes

 [error] TTY::Prompt::ConfigurationError : default index `1` out of range (1 - 0)
         See /Users/mpa/.kontena/kontena.log or run the command again with environment DEBUG=true set to see the full exception

dup of #56 ?

Yes

Closed as duplicate


Adding documentation example, fixing typo

While going through the code in preparation for completing this issue https://github.com/mamba-org/rattler/issues/81, I thought it would be nice to add a working example to the crate documentation. I also fixed a typo I found.

Looks good! Only cargo fmt seems to be missing :)

Thanks again @travishathaway !


[Feat] Large corpus spliting

Hello,
As we discussed on discord, pretraining is usually done on large chunks of text (books, entire web pages, articles) that are larger than the context size. With this in mind I propose that we introduce an automatic split mechanism for such datasets.
The reasoning behind doing this within Axolotl and not doing it ahead of time is that doing it ahead of time locks the dataset to a specific context size and would require a new generation pass to target another context size.
I also propose the following settings:

context_frac: 0.8: Splits the text up to context_frac * context size
split_regexes: A list of regex used to split the text, this can help improve the split points.
overlap_tokens: How many tokens overlap between two split chunks.

Yess

+1

I remember seeing how llama (v1) did pretraining and they included metadata I think on each set of 2048 tokens maybe? If we can track down the appropriate algorithm for this and how metadata for each row should be formatted, I think we can make some progress on this soon.

Is this being implemented yet?  I need it in the next week so I'm happy to implement it if nobody else is working on it

I was planning just simple

tokenize the document
iterate pointer by context length then walk it back to a word / paragraph boundary
output detokenized chunk to a line in jsonl file
repeat until the end of the document

The reasoning behind doing this within Axolotl and not doing it ahead of time is that doing it ahead of time locks the dataset to a specific context size and would require a new generation pass to target another context size.

Regarding this, there is a pretraining_dataset config which allows streaming for completion type pre-training. Another thing is that thanks to a PR, the tokenization should be much faster than before.

I don't understand how that's relevant? Is there a sliding window with regards to tokenization when streaming completion data?

How about something like this?
class CompletionPrompter:

    """

    Prompter for completion

    """

    def __init__(self, context_size: int, context_frac: float = 0.8, overlap_tokens: int = 0):

        self.context_size = context_size

        self.context_frac = context_frac

        self.overlap_tokens = overlap_tokens

    def _split_text(self, text: str) -> Generator[str, None, None]:

        target_size = int(self.context_frac * self.context_size)

        start_idx = 0

        while start_idx < len(text):

            end_idx = min(start_idx + target_size, len(text))

            yield text[start_idx:end_idx]

            start_idx = end_idx - self.overlap_tokens if end_idx < len(text) else len(text)

    def build_prompt(

        self,

        instruction: str,

        input=None,  # pylint: disable=redefined-builtin, unused-argument

        output=None,  # pylint: disable=unused-argument

    ) -> Generator[str, None, None]:

        if len(instruction) > self.context_size:

            for chunk in self._split_text(instruction):

                yield chunk

        else:

            yield instruction

mhenrichsen's code snippet looks perfect for the feature request. Is there something that's preventing this from being committed?

Uhm, I think this may already have been implemented. https://github.com/OpenAccess-AI-Collective/axolotl/blob/a21935f07af9d825d7730fe944d29cfdef3a5337/src/axolotl/prompt_strategies/completion.py#L52-L57


fix: syntax error in README gitlab-ci example

fix syntax error in README
Fixes #185

CI is broken due to formatting.

https://docs.gitlab.com/ee/ci/yaml/index.html#only--except
Oh, it seems only has been deprecated, see also #177


Headless mode for API category

Implement headless mode for add/update/remove AppSync APIs
This PR includes all changes from #4583 (converting API plugin to TS) but that PR has gone stale so I'm closing it in favor of this one.
E2E run for these changes is here: https://circleci.com/workflow-run/428020ee-89de-4901-a69f-cbdff82f396b
Also includes changes from the following PRs to the headless branch:
#4600
#4640
#4729
#4730
#4763
#4766
To see changes not included in those PRs, filter all changes after 2ef62f2. You may also want to filter out the merge from master commits.
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

LGTM.
Have previously reviewed and approved the following PR's in small chunks before approving this larger PR
#4600
#4640
#4729
#4730
#4763
#4766
Discussed offline - please remove the publish:headless-staging option from package.json once we don't need it.


KB shortcuts, Colors & other settings reset after update to 6.1.3

I had my DBeaver color theme configured to be the default dark theme that was here in older versions, such as orange text for SQL keywords. After updating to 6.1.3, it overwrote my custom keyboard shortcuts, color and display settings (I had it zoomed in), and now shows the SQL keywords in a light blue that is hard to read on a dark theme.

I have lost all my existing editors after upgrading to 6.1.3 on Mac and Windows. Is there any way to restore the existing editors that were saved on exit and restored when updating versions.

UI settings were rest during workspace migration in 6.1.3.
You can use UI settings from you previous version. You will need to copy file workbench.xmi from old workspace location to the new workspace location. See exact paths for different versions here: https://github.com/dbeaver/dbeaver/wiki/Workspace-Location

UI settings were rest during workspace migration in 6.1.3.
You can use UI settings from you previous version. You will need to copy file workbench.xmi from old workspace location to the new workspace location. See exact paths for different versions here: https://github.com/dbeaver/dbeaver/wiki/Workspace-Location

That's an empty file in the old location.


Use bcrypt instead of SHA-1

You should store passwords using some modern hash algorithms like bcrypt.

@kubp yes, but I think that for personal usage is SHA1 OK. You can change hash algorithm to e.g. sha256, sha512 (with salt) or something else in:
// models/login.js:8
if (user && user.password == model.password.sha512('salt')) {}

// models/users.js:38 and 44
model.password && !model.password.startsWith('****') && (tmp.password = model.password.sha512('salt'));
tmp.password = model.password.sha512('salt');

Thank you!

I didn't know that, thank you for examples. But I would still set at least sha512 as the default option.


Update README.md

A more convenient way to require bootstrap.php, respecting the same code build in the framework.

Thank you!


No QueryClient set with PNPM

Describe the bug
Hello,
Firstly, thank you for this library, It's fantastic - I have been using it for many years.
I have recently tried to migrate my monorepo project to pnpm - after a lot of effort, everything seems to be working except for this error thrown by @tanstack/react-query.
Within the monorepo I have apps that import @tanstack/react-query, as well as packages that also import @tanstack/react-query, and are in turn imported by the app(s). The app uses @tanstack/react-query to prefetch some queries on the server and as well as making queries in the browser.
The prefetched queries seem to work fine - the server returns the hydrated HTML with the correct data. However, once the client JS loads the error is thrown - No QueryClient set, use QueryClientProvider to set one.
I have created a minimal example here - https://github.com/accordionpeas/react-query-pnpm-demo
The first commit contains code that does not import a local package that itself imports @tanstack/react-query - this works fine. The second commit (HEAD of main) shows the error.
Things I have tried to resolve this issue:

Looking through issues in this repo - there are some similar issues and I have tried workarounds suggested in those threads but with no luck
I have ensured the same version of @tanstack/react-query is imported throughout the project
I have tried hoisting @tanstack/react-query and @tanstack/query-core with public-hoist-pattern
I have tried removing all workspace dependencies of @tanstack/react-query and installing in the root workspace instead.

Any help would be greatly appreciated.
Your minimal, reproducible example
https://github.com/accordionpeas/react-query-pnpm-demo
Steps to reproduce

Clone the demo repo
Install - pnpm i
Build - pnpm run build
Run - pnpm run start
Visit - http://localhost:4321

Expected behavior
I expect the error not to be thrown and to work as normal
How often does this bug happen?
Every time
Screenshots or Videos
No response
Platform

OS: macOS
Browser: Chrome
Version: 117

Tanstack Query adapter
None
TanStack Query version
v4.33.0
TypeScript version
v4.9.5
Additional context
No response

your dependency setup looks correct. However, I can see two versions of react-query in the resulting bundle, which is the cause of the error. It must be bundling related. I'd suggest to try to simplify it a bit. 160 lines of custom webpack config seems like a good candidate. We are using pretty much the same pattern (pnpm monorepo, QueryClientProvider in one package, useQuery in another), and we also had issues with this in pnpm v7 (basically this, but it doesn't apply to your situation). However, those have been addressed in pnpm. We use a standard next-js app without a custom build config, and everything builds fine with that.

Thanks for the response. That's a fair point about the webpack config - I've simplified it and got it working - I've pushed a working version on the demo repo.
This has made me realise what is causing the error - if I change my tsconfig from "module": "commonjs" to  "module": "ESNext" then error is there.
Do you have any idea why that might be? I need ESNext to get loadable components to work.

hm no, sorry. we use "module": "es2020" and it works fine

es2020 also doesn't work. The only module option that seems to work is commonjs

For anyone who comes across this issue - adding the following to my webpack config seems to have solved it.
resolve: {
    alias: {
        "@tanstack/react-query": require.resolve('@tanstack/react-query', '../../')
    }
}

For anyone who comes across this issue - adding the following to my webpack config seems to have solved it.
resolve: {
    alias: {
        "@tanstack/react-query": require.resolve('@tanstack/react-query', '../../')
    }
}

@accordionpeas thank you so much, I was struggling with the same issue for two days 🙏
But out of curiosity, have you ever discovered why this alias is needed and what the original problem is?
I have it working on web now with this webpack change but it is still failing for the same reason on react-native side.

Hi @emzet93, sorry no I'm not sure what the original problem is. Once I found this fix, I stopped wasting time on it. Good luck!

Thanks! I managed to fix my react native setup by adding the same alias in babel.
My thought is that if this alias helps, then it could mean that there are multiple different versions of @tanstack/react-query indeed. However I double checked that and there is only one.
Anyway, I'm happy it works now. Thanks again.


Error: listen EADDRINUSE

Please note that I am not an experienced programmer.  However, if I am following your steps correctly I am getting a consistent error.
I have unzipped and copied the folder to: /home/pi/cncjs-tablet
Then I PuTTY into my Raspberry Pi and run the command:
$ cnc -m /tablet:/home/pi/cncjs-tablet/src
It gives me the following error:
pi@cncjs:~ $ cnc -m /tablet:/home/pi/cncjs-tablet/src
2018-09-03T17:09:23.203Z - info: init Loading configuration from "/home/pi/.cncrc"
2018-09-03T17:09:23.307Z - info: init Mounting a directory "/home/pi/cncjs-tablet/src" to serve requests starting with /tablet
2018-09-03T17:09:27.185Z - error: init { Error: listen EADDRINUSE <IP_ADDRESS>:8000
at Object._errnoException (util.js:992:11)
at _exceptionWithHostPort (util.js:1014:20)
at Server.setupListenHandle [as _listen2] (net.js:1355:14)
at listenInCluster (net.js:1396:12)
at doListen (net.js:1505:7)
at _combinedTickCallback (internal/process/next_tick.js:141:11)
at process._tickCallback (internal/process/next_tick.js:180:9)
at Function.Module.runMain (module.js:695:11)
at startup (bootstrap_node.js:191:16)
at bootstrap_node.js:612:3
code: 'EADDRINUSE',
errno: 'EADDRINUSE',
syscall: 'listen',
address: '<IP_ADDRESS>',
port: 8000 }
Error: { Error: listen EADDRINUSE <IP_ADDRESS>:8000
at Object._errnoException (util.js:992:11)
at _exceptionWithHostPort (util.js:1014:20)
at Server.setupListenHandle [as _listen2] (net.js:1355:14)
at listenInCluster (net.js:1396:12)
at doListen (net.js:1505:7)
at _combinedTickCallback (internal/process/next_tick.js:141:11)
at process._tickCallback (internal/process/next_tick.js:180:9)
at Function.Module.runMain (module.js:695:11)
at startup (bootstrap_node.js:191:16)
at bootstrap_node.js:612:3
code: 'EADDRINUSE',
errno: 'EADDRINUSE',
syscall: 'listen',
address: '<IP_ADDRESS>',
port: 8000 }

EADDRINUSE means that CNCjs is already running , so the attempt to run it again fails because the other pre-existing process has exclusive use of the network communication port. The other prices was probably started automatically if you followed the instructions that tell you to set up pm2.
There are two ways to fix it. One is to manually kill the other CNCjs and then rerun the command line to start the tablet version. The other is to modify the parameters of the autostart command to include the tablet mount arguments.
I can't be more detailed at the moment because I am doing this on my phone. Later when I can sit down in front of a keyboard perhaps I can give more details

Thanks for the quick reply. That makes sense. I will see if I can find and
edit the autostart command.
Thanks again.
On Mon, Sep 3, 2018, 11:28 AM Mitch Bradley<EMAIL_ADDRESS>wrote:

EADDRINUSE means that CNCjs is already running , so the attempt to run it
again fails because the other pre-existing process has exclusive use of the
network communication port. The other prices was probably started
automatically if you followed the instructions that tell you to set up pm2.
There are two ways to fix it. One is to manually kill the other CNCjs and
then rerun the command line to start the tablet version. The other is to
modify the parameters of the autostart command to include the tablet mount
arguments.
I can't be more detailed at the moment because I am doing this on my
phone. Later when I can sit down in front of a keyboard perhaps I can give
more details
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/cncjs/cncjs-shopfloor-tablet/issues/7#issuecomment-418165991,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AiDzBJzlsEKAHCvC-O8j--NiuJO3xiHwks5uXWaigaJpZM4WX5Vr
.

Closing the ticket based on the positive response.  Feel free to comment again or re-open if necessary.

Hi Mitch, not sure where I should ask this question because it is not
really an issue but a question.  I have the shop floor version of cncjs
running well now and use it often. However there is one feature from the
desktop version that I miss in the shop floor version and that is the macro
command section.  I have created an android app that generates a macro for
3 axis homing based on bit diameter.  The app generates the g-code and
copies it to the clip board.  If I paste that code into the macro section
of the full site of cncjs it runs great and finds a perfect 3 axis zero.  I
thought I could do the same thing with the shop floor version just pasting
the code into the MDI section.  However, it doesn't run the entire series
of commands (separated by ;) it only runs the first one.  Is there anyway
to paste about 20 lines of g-code into the MDI section at once and have it
run it one line at a time? Or, is there anyway I could add the macro
section from the desktop version?  Or do you have any other suggestions on
how I might be able to accomplish this?  Please let me know if I can
clarify in any way.  Thanks in advance...love the work you have done on
this!
On Mon, Sep 3, 2018 at 8:08 PM Mitch Bradley<EMAIL_ADDRESS>wrote:

Closing the ticket based on the positive response. Feel free to comment
again or re-open if necessary.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/cncjs/cncjs-shopfloor-tablet/issues/7#issuecomment-418220297,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AiDzBL8-qBDwoLLUEsFZ9cb3twDRp4y2ks5uXeC1gaJpZM4WX5Vr
.


Fix backend display in docs

DI docs

Fix broken backend display on backends page

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 20.88%. Comparing base (feb17b0) to head (894befa).

:exclamation:  There is a different number of reports uploaded between BASE (feb17b0) and HEAD (894befa). Click for more details.
HEAD has 44 uploads less than BASE
| Flag | BASE (feb17b0) | HEAD (894befa) |
|------|------|------|
||50|6|

Additional details and impacted files
@@             Coverage Diff             @@
##             main     #333       +/-   ##
===========================================
- Coverage   96.73%   20.88%   -75.86%
===========================================
  Files         101       68       -33
  Lines        4840     2624     -2216
===========================================
- Hits         4682      548     -4134
- Misses        158     2076     +1918

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Management is abbreviated with outdated "Manage." instead of "Manag."

JabRef version 5.0
Several entries of the standard list of abbreviations containing "Management" are abbreviated with outdated "Manage." instead of the current "Manage."
See e.g. https://en.wikipedia.org/wiki/Management_Science_(journal)

@mlangiu  I have moved your issue to the abbreviation repository, where you can see the journal lists and modify them

@mlangiu Could you please refine your isse?
I don't see the difference between "Manage." and "Manage."

@koppor sorry for the typo, it's been corrected


Coroot UI doesn't see pg-agent metrics

Hello,
Thank you for  this wonderful and convinient instrument!
Unfotunately, I met some troubles with pg-agent.
After installation I've seen the relevant metrics in Prometheus, but my Coroot UI doesn't see them (though it registered the instance of pg-agent)

I started pg-agent with
docker run -d --name coroot-pg-agent -p <port>:80 --env DSN="postgresql://<user>:<password>@<ip>:5432/postgres?connect_timeout=1&statement_timeout=30000" ghcr.io/coroot/coroot-pg-agent
But got in logs of Coroot UI container:
couldn't find actual instance for "postgres", initial instance is<EMAIL_ADDRESS>(map[])
(yes, I have the role of postgres_exporter in PostgreSQL, but use another role for Coroot pg-agent).
What have I done wrong?
Also, I've got none of those metrics: pg_lock_awaiting_queries, pg_wal_receiver_status, pg_wal_replay_paused, pg_wal_receive_lsn, pg_wal_reply_lsn. May be, it was happened because of using PostgreSQL 11 version?

Your screenshot shows no connections between Prometheus and coroot-pg-agent (there should be an inbound connection to pg-agent). Are you sure that Prometheus has discovered the pg-agent's endpoint?
It seems that the Postgres metrics in your Prometheus are being gathered by pg_exporter, not coroot-pg-agent. Please check this out.
Speed up your workflow with DeepL for Mac.
Download for free
!

Thank you for the answer!
Yes, my Prometheus catches the metrics from pg-agent, I see it in it's interface

and also see graphics
But Coroot UI still doesn't get this metrics from Prometheus

To understand the case better, I need to see the following metrics with their labels, including the original IP addresses (Coroot maps Postgres metrics to the corresponding containers by matching IP:PORT pairs)
container_net_tcp_listen_info{container_id=~".*pg-agent.*"}
container_net_tcp_active_connections{container_id=~".*pg-agent.*"}
pg_up

container_net_tcp_listen_info{container_id="/docker/coroot-pg-agent", instance="<IP_ADDRESS>:9887", job="Node-agent_coroot", listen_addr="<IP_ADDRESS>:9886", machine_id="4150b6543c254de9bf577a", proxy="dockerd"}  1
container_net_tcp_listen_info{container_id="/docker/coroot-pg-agent", instance="<IP_ADDRESS>:9887", job="Node-agent_coroot", listen_addr="<IP_ADDRESS>:9886", machine_id="4150b6543c254de9bf577a", proxy="dockerd"}   1
container_net_tcp_listen_info{container_id="/docker/coroot-pg-agent", instance="<IP_ADDRESS>:9887", job="Node-agent_coroot", listen_addr="<IP_ADDRESS>:9886", machine_id="4150b6543c254de9bf577a", proxy="dockerd"}  1
container_net_tcp_listen_info{container_id="/docker/coroot-pg-agent", instance="<IP_ADDRESS>:9887", job="Node-agent_coroot", listen_addr="<IP_ADDRESS>:80", machine_id="4150b6543c254de9bf577a"}  1
container_net_tcp_listen_info{container_id="/docker/coroot-pg-agent", instance="<IP_ADDRESS>:9887", job="Node-agent_coroot", listen_addr="<IP_ADDRESS>:9886", machine_id="4150b6543c254de9bf577a", proxy="dockerd"}  1
container_net_tcp_listen_info{container_id="/docker/coroot-pg-agent", instance="<IP_ADDRESS>:9887", job="Node-agent_coroot", listen_addr="<IP_ADDRESS>:9886", machine_id="4150b6543c254de9bf577a", proxy="dockerd"}  1
container_net_tcp_listen_info{container_id="/docker/coroot-pg-agent", instance="<IP_ADDRESS>:9887", job="Node-agent_coroot", listen_addr="<IP_ADDRESS>:9886", machine_id="4150b6543c254de9bf577a", proxy="dockerd"}  1
container_net_tcp_listen_info{container_id="/docker/coroot-pg-agent", instance="<IP_ADDRESS>:9887", job="Node-agent_coroot", listen_addr="<IP_ADDRESS>:9886", machine_id="4150b6543c254de9bf577a", proxy="dockerd"}  1

container_net_tcp_active_connections{actual_destination="<IP_ADDRESS>:5432", container_id="/docker/coroot-pg-agent", destination="<IP_ADDRESS>:5432", instance="<IP_ADDRESS>:9887", job="Node-agent_coroot", machine_id="4150b6543c254de9bf577a"}  1

pg_up{instance="<IP_ADDRESS>:9187", job="Databases"}  1
pg_up{instance="<IP_ADDRESS>:9886", job="PG-agent_coroot"}  1
where port 9886 is used by pg-agent, port 9887 is used by node-agent, port 9187 is used by postgres_exporter

At this level, everything looks correct.
Can you please show:
container_net_tcp_listen_info{listen_addr=~".+:5432"}
What does the Postgres instance look like in the Coroot UI?

It looks like a bug in Coroot, will try to reproduce it

@doonydoo, can you please update Coroot to version 0.10.1 and verify if this issue has been fixed?

Thank you, Nikolay, now it works!

But still have no infoirmation from pg-agent about locks metrics: pg_lock_awaiting_queries, pg_wal_receiver_status, pg_wal_replay_paused, pg_wal_receive_lsn, pg_wal_reply_lsn (I use PostgreSQL 11 version).
Is it possible to get the graph like this in my UI?

The pg_lock_awaiting_queries metric is reported only if the agent has detected blocked queries, so it seems that there have not been any such situations yet in your case.
The pg_wal_receiver_status, pg_wal_replay_paused, pg_wal_receive_lsn, pg_wal_reply_lsn metrics are gathered only if the Postgres server is a replica. It it true for your case?
If the instance is the master, only pg_wal_current_lsn is gathered.

@def  Thank you for your help and for the explanation!


[release-0.58][e2e]: improve cloud-init user-data specs

What this PR does / why we need it:
This is a manual cherry-pick of https://github.com/kubevirt/kubevirt/pull/9242
libwait package was introduced later than realease-0.58, so here we still use the package tests
Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged):
Fixes #
Special notes for your reviewer:
Release note:

NONE

/cc @enp0s3

/lgtm

/lgtm

Forget it was mine :D


Save the random seed in the SCORM suspend data

Numbas.exam.seed is the seed for the random number generator, and is displayed on the results screen as "session ID". The idea was that you could use the session ID to regenerate an exam with exactly the same randomisation, without relying on having a saved SCORM attempt.
Students are advised to take screenshots of the results screen. It would be good if we could use the session ID to verify that a screenshot is of the attempt the student claims it is.
So, Numbas.exam.seed should be saved in the suspend data, and loaded when resuming an attempt. The current state of the random number generator could also be saved, but it should only be restored once the whole attempt is finished loading - you can't rely on exactly the same calls to the RNG happening in the same order.

Hey, I wanted to contribute to numbas and work on this ticket, I am a newbie in Django though, can you point me where to start?

@ApoorvChandurkar thanks for offering to help. This issue won't affect any parts of the editor, which uses Django: it's purely about the runtime, which is written in JavaScript.
The bit of code that needs to be changed is setSuspendData in scorm-storage.js. The variable eobj should have a key randomSeed whose value is exam.seed


removing commented out code

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 98.87%. Comparing base (9c3c3c6) to head (91c8883).

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #144   +/-   ##
=======================================
  Coverage   98.87%   98.87%
=======================================
  Files          24       24
  Lines        3736     3736
=======================================
  Hits         3694     3694
  Misses         42       42

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


table with automatic ID?

Hi,
I have a table with
    @PrimaryKey (autoincrement = true)
    Long id;
    @Column...with the rest of the columns

but when I try to insert elements, without setting the 'id' value to anything, I get the error:
java.lang.IllegalArgumentException: HistoryItem.id must not be null, or use @Nullable to declare it as NULL
Could you please let me know how to use automatic IDs in the tables?
Thanks!

Sorry to poor document but it is intended behavior. Use long instead of Long if you use auto id.  Primary keys require a primitive type.


Support markers with partial assembly

Currently, bilinear forms with partial assembly just ignore the (element and boundary) marker arrays that are passed in when adding the integrators, giving incorrect results whenever some attributes are disabled.
This PR adds support for properly handling the marker arrays, and adds a unit test to test correctness.

PR
Author
Editor
Reviewers
Assignment
Approval
Merge

#3792
@pazner
@tzanio
@YohannDudouit + @camierjs
7/28/23
9/14/23
⌛due 8/18/23

PR Checklist

[ ] Code builds.
[ ] Code passes make style.
[ ] Update CHANGELOG:

[ ] Is this a new feature users need to be aware of? New or updated example or miniapp?
[ ] Does it make sense to create a new section in the CHANGELOG to group with other related features?

[ ] Update INSTALL:

[ ] Had a new optional library been added? If so, what range of versions of this library are required? (Make sure the external library is compatible with our BSD license, e.g. it is not licensed under GPL!)
[ ] Have the version ranges for any required or optional libraries changed?
[ ] Does make or cmake have a new target?
[ ] Did the requirements or the installation process change? (rare)

[ ] Update continuous integration server configurations if necessary (e.g. with new version requirements for each of MFEM's dependencies)

[ ] .github
[ ] .appveyor.yml

[ ] Update .gitignore:

[ ] Check if make distclean; git status shows any files that were generated from the source by the project (not an IDE) but we don't want to track in the repository.
[ ] Add new patterns (just for the new files above) and re-run the above test.

[ ] New examples:

[ ] All sample runs at the top of the example source file work.
[ ] Update examples/makefile:

[ ] Add the example code to the appropriate SEQ_EXAMPLES and PAR_EXAMPLES variables.
[ ] Add any files generated by it to the clean target.
[ ] Add the example binary and any files generated by it to the top-level .gitignore file.

[ ] Update examples/CMakeLists.txt:

[ ] Add the example code to the ALL_EXE_SRCS variable.
[ ] Make sure THIS_TEST_OPTIONS is set correctly for the new example.

[ ] List the new example in doc/CodeDocumentation.dox.
[ ] If new examples directory (e.g.examples/pumi), list it in doc/CodeDocumentation.conf.in
[ ] Companion pull request for documentation in mfem/web repo:

[ ] Update or add example-specific documentation, see e.g. the src/examples.md.
[ ] Add the description, labels and screenshots in src/examples.md and src/img.
[ ] In examples.md, list the example under the appropriate categories, add new categories if necessary.
[ ] Add a short description of the example in the "Extensive Examples" section of features.md.

[ ] New miniapps:

[ ] All sample runs at the top of the miniapp source file work.
[ ] Update top-level makefile and makefile in corresponding miniapp directory.
[ ] Add the miniapp binary and any files generated by it to the top-level .gitignore file.
[ ] Update CMake build system:

[ ] Update the CMakeLists.txt file in the miniapps directory, if the new miniapp is in a new directory.
[ ] Add/update the CMakeLists.txt file in the new miniapp directory.
[ ] Consider adding a new test for the new miniapp.

[ ] List the new miniapp in doc/CodeDocumentation.dox
[ ] If new miniapps directory (e.g.miniapps/nurbs), add it to MINIAPP_SUBDIRS in the makefile.
[ ] If new miniapps directory (e.g.miniapps/nurbs), list it in doc/CodeDocumentation.conf.in
[ ] Companion pull request for documentation in mfem/web repo:

[ ] Update or add miniapp-specific documentation, see e.g. the src/meshing.md and src/electromagnetics.md files.
[ ] Add the description, labels and screenshots in src/examples.md and src/img.
[ ] The miniapps go at the end of the page, and are usually listed only under a specific "Application (PDE)" category.
[ ] Add a short description of the miniapp in the "Extensive Examples" section of features.md.

[ ] New capability:

[ ] All new public, protected, and private classes, methods, data members, and functions have full Doxygen-style documentation in source comments. Documentation should include descriptions of member data, function arguments and return values, template parameters, and prerequisites for calling new functions.
[ ] Pointer arguments and return values must specify whether ownership is being transferred or lent with the call.
[ ] Any new functions should include descriptions of their intended use e.g. for internal use only, user-facing, etc., along with references to example code whenever possible/appropriate.
[ ] Consider adding new sample runs in existing examples to highlight the new capability.
[ ] Consider saving cool simulation pictures with the new capability in the Confluence gallery (LLNL only) or submitting them, via pull request, to the gallery section of the mfem/web repo.
[ ] If this is a major new feature, consider mentioning it in the short summary inside README (rare).
[ ] List major new classes in doc/CodeDocumentation.dox (rare).

[ ] Update this checklist, if the new pull request affects it.
[ ] Run make unittest to make sure all unit tests pass.
[ ] Run the tests in tests/scripts.
[ ] (LLNL only) After merging:

[ ] Update internal tests to include the new features.

This PR is now under review (see the table in the PR description). To help with the review process, please do not force push to the branch.

Merged in next for testing...


Property does not exist on generic type based on Record<string, any>

🔎 Search Terms
generic type record interface property missing
🕗 Version & Regression Information
Tried 4.0.5, 5.3.2 and v5.4.0-dev.20231215
⏯ Playground Link
https://www.typescriptlang.org/play?jsx=0&ts=5.3.2#code/FAYwNghgzlAEAqBTKAXAPPWiAeLEDsATOAJURAHsAnQtVKgS3wHMAaWCfATwD4fgA3sFgjYAW0QoAFhUIAKCFWYAuBAEphooaJ0clAOigUJ0ps1gBeWAHJrAbk27YAemexAMuSwAClQoAHRCoULhsjEykza1hCCmRYfAoULGwGVFgKfFhggJt4a305ACYAZmKATg0dAF9gR3FJGUJChSVVMkoaOhRGFnZOXkqtOp1FZkNjBrNLG3th0VdYQFByWABRADdArhQp1NgAMyZEOpqaoA
💻 Code
class Test<T extends Record<string, any>>
{
    method(arg: T)
    {
        arg.something = '';
        // ❌ Property 'something' does not exist on type 'T'.(2339)
    }

    method2(arg: Record<string, any>)
    {
        arg.something = '';
        // ✅ Everyting is fine
    }
}

🙁 Actual behavior
Throws the error that a random string property does not exist on Record<string, any>
🙂 Expected behavior
It should accept any string property
Additional information about the issue
No response

Your type T is not a record, it just has to extend it. The type may be more specific, including a type that has a something property typed boolean.
new Test<{ something: true }>

Thank you for the prompt response @MartinJohns
I still don't really understand why this wouldn't work as expected.
Let me explain a little more about our actual use case.
We have an interface with some required/known properties, but it can also contain any other properties, like this:
interface IData extends Record<string, any>
{
    required: string;
}

or:
interface IData
{
    required: string;
    [key: string]: any;
}

If we create a class with a generic type extending IData we can only use the property required:
class Test<T extends IData>
{
    method(arg: T)
    {
        arg.required = 'Test';
        arg.something = 'Test'; // ❌ Property 'something' does not exist on type 'T'
    }

    method2(arg: IData)
    {
        arg.required = 'Test';
        arg.something = 'Test'; // ✔ Everything is fine
    }
}

Data structures like that are inherently unsafe. You wrongly assume required is always typed string, when it in fact can be any type due to assignability vis the indexer.
But I've demonstrated why it's not supported the way you want to. The type can be more specific than what you're extending. If you want to be able to access and modify any property, then just use the type Record<string, any>.

It behaves this way for the same reason you can’t assign an arbitrary number - let’s say 4 - to a variable typed T extends number: because T might be instantiated as 1 | 2 | 3.
T extends Record<string, any> doesn’t mean T can only be a record-like type (this is a common mistake), it can in fact be any type that’s assignable to the aforementioned Record type.  Which includes things like { something: number } to which the assignment of a string is unsound.

I don't see any advantage of writing Record<string, any> over just any except to try to silence overzealous linters. Regardless, this is the intended behavior.


Add Pokemon evolve information

I think the most useful form of this would be as outlined in Biuni's pokedex. Specifically, name and number of all previous/future evolutions in a list field. That said, I see nothing wrong with next and/or prev pointers in addition to lists of evolutions.
For my situation (visual tiers with evolution indicators), I really would benefit a lot from the list fields.
I'll likely fork the repo and see if I can take a crack at this, but I'm not sure how much time I have to work on it.

Are you using Windows, Mac, or Linux to develop this, and what version of lodash do you have installed?
There's something going on with my machine where tsc refuses to work, complaining about WeakMap needing to be declared with identical type parameters in all places... Oh, and it blames some lodash file...

@proegssilb seemed like an error from @types/lodash https://github.com/DefinitelyTyped/DefinitelyTyped/issues/14324.
Fixed this with commit 934c02abd01bda0579c061e76dc2075c00cf349e
I developed this with Linux and Windows by the way

@proegssilb really strange. In my docker container it can't find package ts-node and Travis can't find Mocha. But when I run locally npm cache clean && rm -rf node_modules/ && npm install && npm run start it works.   This does not make sense for me?
I've added both of these dependencies in the package.json. Maybe something is wrong with the npm registry.

@proegssilb Fetch upstream & try again. If it does not work update npm.


[REG-37][Registries] Use bs-popover to display social icons

Purpose
Based on https://github.com/CenterForOpenScience/ember-osf-web/pull/401
Add social sharing-icons component to registries
Summary of Changes

Add new component

Side Effects
Feature Flags
QA Notes

on Registries discover page, please make sure the popover shows and is centered
on left. Check responsiveness, cross some other browser (I tested in chrome while developing).
Analytics: please check that click on the icons hits analytics (if this is applicable, not sure).

Ticket

[[REG-37]]
Reviewer Checklist

[ ] meets requirements
[ ] easy to understand
[ ] DRY
[ ] testable and includes test(s)
[ ] changes described in CHANGELOG.md

Pull Request Test Coverage Report for Build 1664

12 of 22 (54.55%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.02%) to 62.361%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

lib/registries/addon/components/sharing-icons/component.ts
12
22
54.55%

Totals

Change from base Build 1661:
-0.02%

Covered Lines:
3620

Relevant Lines:
5527

💛  - Coveralls


sync released v0.6.3

v0.6.3 is published on npm but package manifest is still at 0.6.2 on master. This aligns the manifest version to latest on npm.
NOTE: Actually published 0.6.3 is published from gitHead 7b4d8345934ad48d4cb1fd8fd2059fdb3a06f6da, which I can not seem to locate.
Actual diff
@thlorenz Any chance you still have access to that commit and able to push it as a v0.6.3 tag, so git tree and npm can match up?
Blocking

#34

#28

#31

Any chance you still have access to that commit and able to push it as a v0.6.3 tag, so git tree and npm can match up?

Sorry, I don't, but PR and 0.6.4 follow up LGTM. Thanks!

Sorry, I don't, but PR and 0.6.4 follow up LGTM. Thanks!
Ok, thanks for following up! I'll see if I can reconstruct it from the published version then, so we can get a tagged release were the sources match at least ^^


Enable skipped causal unit test

Description
Econml had a new release 0.13.1 few days back which has a bug fix https://github.com/microsoft/EconML/pull/602. This bug fix enables the previously failing test case.
Checklist

[ ] I have added screenshots above for all UI changes.
[ ] I have added e2e tests for all UI changes.
[ ] Documentation was updated if it was needed.

Codecov Report

Merging #1565 (9665f6a) into main (9c1a5dc) will decrease coverage by 8.79%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main    #1565      +/-   ##
==========================================
- Coverage   88.03%   79.24%   -8.80%
==========================================
  Files         109       19      -90
  Lines        5291     1267    -4024
==========================================
- Hits         4658     1004    -3654
+ Misses        633      263     -370

Flag
Coverage Δ

unittests
79.24% <ø> (-8.80%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

responsibleai/responsibleai/_config/base_config.py

...i/responsibleai/managers/error_analysis_manager.py

rai_core_flask/rai_core_flask/__init__.py

...ponsibleai/responsibleai/rai_insights/constants.py

raiutils/raiutils/models/model_utils.py

raiutils/raiutils/webservice/webservice.py

raiutils/raiutils/models/__init__.py

...ponsibleai/responsibleai/_tools/shared/versions.py

...ponsibleai/databalanceanalysis/balance_measures.py

raiutils/raiutils/common/__init__.py

... and 80 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 9c1a5dc...9665f6a. Read the comment docs.


Use rfc7700 for nick/channel names

Similar to mammon, should we be using full nameprep casefolding for nick and channel names? Given we're already doing the NFC normalization and such. rfc3454 CASEMAPPING value and all that jazz. See also http://modern.ircdocs.horse/#casemapping-parameter

Let's actually use rfc7700 now that I've thrown a doc at them for it.

Marking as a bug because we currently just say we do ascii when we do special unicode mapping.

5e72409695d34d1b9cd5bfdfa0a22e698effe030 does this, will be cleaned up more later.


Hide auctions that have ended from the auctions list on the homescreen

Right now when the auction deadline has past, but the auctions haven't been formally "ended" yet, they still appear as active on the homescreen. We should not show these.

Eric closed this one.


Add OADA health and resource monitoring

This would probably be something like prometheus with a graphana dashboard. This should give insight into things like average request latency, memory usage, disk usage, network usage, etc.

 Backlog


Cannot display summary on index page

Describe the bug
When you use "read more" () in article, index page won't display summary (under title).
summary in front matter correctly works.
To Reproduce
Steps to reproduce the behavior:

Use "read more" () in article.
Build.
See index page.

Expected behavior
The part above "read more" appears as a summary.
Screenshots
If applicable, add screenshots to help explain your problem.
Desktop (please complete the following information):

OS: macOS
Browser: Chrome
Version of the Theme: v1.12.0
Version of Hugo (run a hugo version if unsure): v0.111.2+extended

Additional context
I changed this filter to plainify, and it's works. But I don't know why it works.
https://github.com/lxndrblz/anatole/blob/master/layouts/index.html#L56
-
{{ .Summary | markdownify }}

+
{{ .Summary | plainify }}

I can use the summary together with  pretty fine with Hugo v0.140.1 and Anatole v1.16.1. There was a change regarding the summary in the last release. You should upgrade Hugo and the Anataole theme and I'm pretty convinced it will work.


Support for WASM

I tried using this with compose 1.4.0-dev-wasm06 and it conflicts with that version, so I cannot use it

This may take some time, some of the current dependencies such as kotlinx.coroutines have not add wasm target yet.

https://github.com/Kotlin/kotlinx.coroutines/issues/3713
https://youtrack.jetbrains.com/issue/KTOR-5587/Ktor-client-for-Kotlin-Wasm

@DRSchlaubi  I've just released a version 1.6.4-wasm0, you can try it out.

@qdsfdhvh hi, how to use wasm version? and what's the latest version?Could not find io.github.qdsfdhvh:image-loader:1.6.4-wasm0.
repositories {
    maven("https://maven.pkg.jetbrains.space/public/p/compose/dev")
    maven("https://maven.pkg.jetbrains.space/kotlin/p/wasm/experimental")
    maven("https://maven.pkg.jetbrains.space/kotlin/p/kotlin/dev")
    google()
    gradlePluginPortal()
    mavenCentral()
}

I uploaded mavenCentral  before, but the version seems to be missing, I will going to reorganise an wasm version.

@nowiwr01w I've just published 1.7.2-SNAPSHOT version, you can test it.
 repositories {
    maven("https://maven.pkg.jetbrains.space/kotlin/p/wasm/experimental") // for ktor 3.0.0-wasm2
    maven("https://s01.oss.sonatype.org/content/repositories/snapshots/")
}

dependencies {
    implementation("io.github.qdsfdhvh:image-loader:1.7.2-SNAPSHOT")
}

Any plans to add wasm target support to release?

Now, I am waiting for ktor to release a full version 3.0.0 with wasm.


YouRefIt Request Form No Longer Accepting Responses

I've encountered an issue with the YouRefIt Request form - it is no longer accepting responses.
If this is an error, could you please look into it?

Excuse me, I am unable to download the datasets. Could you give me some advice?


feat: custom item (names)

even though there's #1 for official econode items, custom item names would still be cool

would possibly be confusing across different instances, not worth doing either


[QUESTION] Consumer not working with stopAfterLastMessage enabled

I have this code in a Laravel Command:
Kafka::createConsumer()
    ->subscribe($this->topic)
    ->withConsumerGroupId(config('kafka.consumer_group_id'))
    ->withHandler(fn (KafkaConsumerMessage $message) => $this->handler($handler, $message))
    ->stopAfterLastMessage()
    ->build()
    ->consume();

This command is executed in a cronjob every minute.
The problem is that never read any message from kafka, the pending queue offset is always in same position.
If I remove the stopAfterLastMessage option, the command will be executed without stop and then they can read the messages without problem.
Kafka::createConsumer()
    ->subscribe($this->topic)
    ->withConsumerGroupId(config('kafka.consumer_group_id'))
    ->withHandler(fn (KafkaConsumerMessage $message) => $this->handler($handler, $message))
    ->build()
    ->consume();

My config is:
<?php

return [
    /*
     | Your kafka brokers url.
     */
    'brokers' => env('KAFKA_BROKERS', 'localhost:9092'),

    /*
     | Kafka consumers belonging to the same consumer group share a group id.
     | The consumers in a group then divides the topic partitions as fairly amongst themselves as possible by
     | establishing that each partition is only consumed by a single consumer from the group.
     | This config defines the consumer group id you want to use for your project.
     */
    'consumer_group_id' => env('KAFKA_CONSUMER_GROUP_ID', 'group'),

    /*
     | After the consumer receives its assignment from the coordinator,
     | it must determine the initial position for each assigned partition.
     | When the group is first created, before any messages have been consumed, the position is set according to a configurable
     | offset reset policy (auto.offset.reset). Typically, consumption starts either at the earliest offset or the latest offset.
     | You can choose between "latest", "earliest" or "none".
     */
    'offset_reset' => env('KAFKA_OFFSET_RESET', 'earliest'),

    /*
     | If you set enable.auto.commit (which is the default), then the consumer will automatically commit offsets periodically at the
     | interval set by auto.commit.interval.ms.
     */
    'auto_commit' => env('KAFKA_AUTO_COMMIT', true),

    'sleep_on_error' => env('KAFKA_ERROR_SLEEP', 5),

    'partition' => env('KAFKA_PARTITION', -1),

    /*
     | Kafka supports 4 compression codecs: none , gzip , lz4 and snappy
     */
    'compression' => env('KAFKA_COMPRESSION_TYPE', 'snappy'),

    /*
     | Choose if debug is enabled or not.
     */
    'debug' => env('KAFKA_DEBUG', false),

    /*
     | Repository for batching messages together
     | Implement BatchRepositoryInterface to save batches in different storage
     */
    'batch_repository' => env('KAFKA_BATCH_REPOSITORY', \Junges\Kafka\BatchRepositories\InMemoryBatchRepository::class),
];

Any idea why can not read the pending queue messages when stopAfterLastMessage is enabled?
I can read the pending queue messages using the kafka command ./bin/kafka-console-consumer.sh --topic topic --bootstrap-server localhost:9092
Thanks!

Hey @eusonlito sorry for the late response. I recently discovered a bug on the auto commit feature. Can you please try to consume with stopAfterLastMessage enabled again? It should work as expected. I'll close this for now but feel free to comment here or open another issue if you are still facing problems. Thank you!


WIP: Ablation experiments

@mlb2251 we should probably close this PR too (but not delete the branch). I think the experiments branch contains all the up-to-date run-scripts for this anyway, right?

Sounds good ya go for it!


Fix concat_rows with not aligned dataframes

Closes https://github.com/elixir-explorer/explorer/issues/902

This is a simple one, so I'm merging.


Model/Node/Inlet/Outlet/Link constructors should be hidden from the user

Since they weren't intended to be used by her anyway.

Done in 41eda82b16 and 8980ab8


Error Execute Unit Test with Karma and Jest -> ngx-device-detector

Hello.
I have a problem running unit tests with Karma and Jest. Error:
10% building 2/2 modules 0 active09 09 2020 17:21:30.814:INFO [karma-server]: Karm876/
09 09 2020 17:21:30.824:INFO [launcher]: Launching browsers ChromeHeadless with con
09 09 2020 17:21:30.852:INFO [launcher]: Starting browser Chrome                   lessChrome 85.0.4183 (Windows 10.0.0)]: Connected on socket eiUJzGQhh8hT_jt8AAAA wi
HeadlessChrome 85.0.4183 (Windows 10.0.0) ERROR
  Uncaught TypeError: Object(...) is not a function
  at http://localhost:9876/_karma_webpack_/vendor.js:199600:103

  TypeError: Object(...) is not a function
      at Module../node_modules/ngx-device-detector/fesm2015/ngx-device-detector.js ack:/node_modules/ngx-device-detector/fesm2015/ngx-device-detector.js:750:49)
      at __webpack_require__ (http://localhost:9876/_karma_webpack_/webpack:/webpac
      at Object.require (http://localhost:9876/_karma_webpack_/webpack:/src/app/ser
      at __webpack_require__ (http://localhost:9876/_karma_webpack_/webpack:/webpac
      at Object.require (http://localhost:9876/_karma_webpack_/webpack:/src/app/com
      at __webpack_require__ (http://localhost:9876/_karma_webpack_/webpack:/webpac
      at Object../src/app/components/modal/modal.spec.ts (http://localhost:9876/_kadal/modal.spec.ts:3:1)
      at __webpack_require__ (http://localhost:9876/_karma_webpack_/webpack:/webpac
      at webpackContext (http://localhost:9876/_karma_webpack_/webpack:/src sync \.
      at Array.map (<anonymous>)
HeadlessChrome 85.0.4183 (Windows 10.0.0) ERROR
  Uncaught TypeError: Object(...) is not a function
  at http://localhost:9876/_karma_webpack_/vendor.js:199600:103

  TypeError: Object(...) is not a function
      at Module../node_modules/ngx-device-detector/fesm2015/ngx-device-detector.js

also happens with Jest.
Error con jest:
 8 | import { OrchestratorService } from './orchestrator.service';
       9 | import { InformacionDispositivo } from '../model/infoDispositivo.dt';
    > 10 | import { DeviceDetectorService } from 'ngx-device-detector';
         | ^
      11 |
      12 | @Injectable()
      13 | export class BcUtilitiesService {

      at node_modules/ngx-device-detector/bundles/ngx-device-detector.umd.js:593:38
      at node_modules/ngx-device-detector/bundles/ngx-device-detector.umd.js:2:68
      at Object.<anonymous> (node_modules/ngx-device-detector/bundles/ngx-device-detector.umd.js:5:2)
      at Object.<anonymous> (src/app/services/bc-utilities.service.ts:10:1)
      at Object.<anonymous> (src/app/services/bc-app-data.service.ts:2:1)
      at Object.<anonymous> (src/test/bc-app-data.service.spec.ts:2:1)

Test Suites: 9 failed, 2 skipped, 8 passed, 17 of 19 total
Tests:       4 failed, 2 skipped, 28 passed, 34 total

package.json
{
  "name": "motor-init-angular",
  "version": "0.0.0",
  "license": "MIT",
  "scripts": {
    "ng": "ng",
    "start": "ng serve --proxy-config proxy.conf.json",
    "build": "ng build",
    "build:develop": "ng build --configuration=dllo",
    "build:edwin": "ng build --configuration=edwin",
    "build:release": "ng build --configuration=qa",
    "build:master": "ng build --configuration=prod",
    "test": "ng test",
    "test:jest": "jest --coverage",
    "lint": "ng lint",
    "e2e": "ng e2e",
    "test:watch": "jest --watch"
  },
  "private": true,
  "dependencies": {
    "@angular/animations": "^7.2.15",
    "@angular/cdk": "^7.1.1",
    "@angular/common": "^7.2.15",
    "@angular/compiler": "^7.2.15",
    "@angular/core": "^7.2.15",
    "@angular/forms": "^7.2.15",
    "@angular/http": "^7.2.15",
    "@angular/material": "^7.1.1",
    "@angular/platform-browser": "^7.2.15",
    "@angular/platform-browser-dynamic": "^7.2.15",
    "@angular/router": "^7.2.15",
    "@angularfy/ng-autonumeric": "^2.1.0",
    "@briebug/jest-schematic": "^2.2.0",
    "@fortawesome/fontawesome-pro": "^5.10.0",
    "@ng-bootstrap/ng-bootstrap": "^4.2.2",
    "@ngui/auto-complete": "2.0.0",
    "autonumeric": "^4.5.7",
    "bootstrap": "^4.3.1",
    "core-js": "^2.4.1",
    "crypto-js": "^3.1.9-1",
    "hammerjs": "^2.0.8",
    "jquery": "^1.9.1",
    "moment": "^2.22.1",
    "ngx-bootstrap": "^5.0.0",
    "ngx-countdown": "^3.2.0",
    "ngx-device-detector": "^1.3.6",
    "popper.js": "^1.16.1",
    "rxjs": "^6.5.2",
    "tslib": "^1.10.0",
    "web-animations-js": "^2.3.1",
    "zone.js": "^0.8.29"
  },
  "devDependencies": {
    "@angular-devkit/build-angular": "^0.13.10",
    "@angular/cli": "^7.3.9",
    "@angular/compiler-cli": "^7.2.15",
    "@angular/language-service": "^7.2.15",
    "@types/hammerjs": "^2.0.35",
    "@types/jasmine": "~2.8.3",
    "@types/jasminewd2": "~2.0.2",
    "@types/jest": "26.0.13",
    "@types/node": "~6.0.60",
    "codelyzer": "~4.5.0",
    "grunt": "^1.0.4",
    "grunt-cli": "1.3.2",
    "grunt-npm-install": "^0.3.1",
    "grunt-war": "^0.5.1",
    "jasmine-core": "~2.8.0",
    "jasmine-spec-reporter": "~4.2.1",
    "karma": "^4.4.1",
    "karma-chrome-launcher": "2.2.0",
    "karma-jasmine": "1.1.0",
    "jest": "26.4.2",
    "jest-preset-angular": "8.3.1",
    "karma-junit-reporter": "^1.2.0",
    "karma-phantomjs-launcher": "^1.0.4",
    "node-sass": "^4.13.1",
    "protractor": "^6.0.0",
    "ts-node": "~7.0.0",
    "tslint": "~5.9.1",
    "typescript": "~3.2.4"
  }

please help, and I've tried different versions of Karma, ngx-device-detector, tslib and it keeps crashing

@mpuertao Have you tried the latest version of ngx-device-detector as well? I.e. 2.0.0?

Thanks @AhsanAyaz  ,
I have tried several versions, including the last one, 2.0.0. Also with several versions of tslib up to 2.0.1 and the error continues. This happens to me both with Karma and with Jest:
 TypeError: i0.ɵɵdefineInjectable is not a function

       8 | import { OrchestratorService } from './orchestrator.service';
       9 | import { InformacionDispositivo } from '../model/infoDispositivo.dt';
    > 10 | import { DeviceDetectorService } from 'ngx-device-detector';
         | ^
      11 |
      12 | @Injectable()
      13 | export class BcUtilitiesService {

      at node_modules/ngx-device-detector/bundles/ngx-device-detector.umd.js:593:38
      at node_modules/ngx-device-detector/bundles/ngx-device-detector.umd.js:2:68
      at Object.<anonymous> (node_modules/ngx-device-detector/bundles/ngx-device-detector.umd.js:5:2)
      at Object.<anonymous> (src/app/services/bc-utilities.service.ts:10:1)
      at Object.<anonymous> (src/app/pages/rechazo/rechazo.component.ts:2:1)
      at Object.<anonymous> (src/app/pages/rechazo/rechazo.component.spec.ts:3:1)

Este error lo acabo de probar con las siguientes versiones:
    "ngx-device-detector": "^2.0.0",
    "rxjs": "^6.5.3",
    "tslib": "^1.10.0",
    "zone.js": "^0.9.1"

I appreciate your kind help, it is passing us about 25 projects that use this dependency.

I have tried a thousand ways and I keep getting the error. I can share what you require, I appreciate the help

Hello, this I just found, when compiling I get the error:
WARNING in ./node_modules/ngx-device-detector/fesm2015/ngx-device-detector.js 750:30-48
"export 'ɵɵdefineInjectable' was not found in '@angular/core'

WARNING in ./node_modules/ngx-device-detector/fesm2015/ngx-device-detector.js 750:136-144
"export 'ɵɵinject' was not found in '@angular/core'

With the version 2.0.0 of ngx-device-detector

I just found that the same thing happened to me as in this issue, I corrected it as indicated there, and it worked for me. What can be done with that patch @AhsanAyaz
https://github.com/KoderLabs/ngx-device-detector/issues/91

@mpuertao that means you were still using the old forRoot method in the project.
That has been removed in the earlier releases. Can you confirm your issue is resolved now?

Hello @AhsanAyaz , best regards.
Run with the forRoot for versions prior to 1.3.6 and the problem persists.
Then I removed it in module, and I did it for 1.3.4, 1.3.5, 1.3.6, 1.3.9, 1.3.10 and 2.0.0 and the problem persists.
The only solution is to modify the ngx-device-detector.js file as indicated by the solution proposed in issue # 91

@mpuertao I'm sorry but I'm not able to reproduce the issue. And the fix for issue #91 was already fixed. See my comments on the issue. The person who reported also confirmed it. Use the latest package. And use the latest README

We had to correct the library, and upload it to our dependency manager in Artifactory with the correction that was exposed in issue # 91. Hopefully one day it can be corrected. Regards;