Split @lucia-auth/adapter-prisma

This adds 3 new adapters:

prisma() to @lucia-auth/adapter-sqlite
prisma() to @lucia-auth/adapter-postgresql
prisma() to @lucia-auth/adapter-mysql

It also updates the adapter tests to handle bigints

May I ask what's the advantage of directly using the underlying db commands over prisma? This would mean you loose a few goodies such as query optimatization, client extensions and other special handling of other fields (say you add another field to a key, then the db type needs to be manually converted to the correct type etc).

With the current approach, you can't rename schema fields. I'm not sure how client extensions or optimization can be useful here

Client extensions are useful, since you can do something like validate(...).user.myextension(). This would be no longer possible with these new adapters as user is no longer a prisma user.
If it's really only for being able to rename fields (which I'm not sure is that important), you could add user-specified transformers from the prisma type to what lucia expects, and vice versa.

Client extensions are useful, since you can do something like validate(...).user.myextension()

I'm still struggling to see how or when that's useful?

If it's really only for being able to rename fields (which I'm not sure is that important)

Didn't you open #1153? Prisma doesn't support renaming fields when using prisma migrate, so we can't just change the Prisma adapter to use camel case. So it's less about having the ability to rename fields and more about getting consistent field names without breaking existing projects. And using snake case for the actual database columns is the de-facto standard anyway.

you could add user-specified transformers from the prisma type to what lucia expects, and vice versa.

I'd rather not. It's just adds more config, and it'll be better if people just build their own adapter

Client extensions are useful, since you can do something like validate(...).user.myextension()

I'm still struggling to see how or when that's useful?

The canonical example is that you save first and last name in your database, but you want to often use the full name in your code. With extensions you can simply call user.fullname to get the fullname. (Of course there are workarounds but there is a reason why prisma introduced these extension methods).

If it's really only for being able to rename fields (which I'm not sure is that important)

Didn't you open #1153? Prisma doesn't support renaming fields when using prisma migrate, so we can't just change the Prisma adapter to use camel case. So it's less about having the ability to rename fields and more about getting consistent field names without breaking existing projects. And using snake case for the actual database columns is the de-facto standard anyway.

Of course, changing the names would be a breaking change. But afterwards I don't think a lot of users need the flexibility to use different field names - and if they need, they can of course write their own adapter as you said. Btw you do can relatively easily rename columns/fields with prisma migrate: https://www.prisma.io/docs/guides/migrate/developing-with-prisma-migrate/customizing-migrations#example-rename-a-field

But afterwards I don't think a lot of users need the flexibility to use different field names

That's the side effect of this change, not the main goal (which is to provide a way to use camelCase for Prisma fields).

Btw you do can relatively easily rename columns/fields with prisma migrate

Manually editing the migration script sounds like a hack
I'd rather use the Prisma interface directly but Lucia's adapters were mostly intended for direct database access, rather than  an ORM. This change would make Prisma more consistent with other adapters and approaches

Of course, I cannot and don't want to tell you how to maintain this awesome library. But this PR seems like a lot of maintenance burden in the future for relatively little benefit. In my opinion, simply renaming the fields to align with the prisma conventions in new major version would be fine and sufficient.
(For what's worth auth-js is also directly using the prisma client: https://github.com/nextauthjs/next-auth/blob/main/packages/adapter-prisma/src/index.ts)

But this PR seems like a lot of maintenance burden in the future for relatively little benefit.

It's actually the opposite. We can ditch a package, and it shares a lot of code from the other SQL adapters.

Well, you ditch the prisma package for people that use prisma anyway - so not a real benefit for the end user (of course, you don't have to worry about prisma things, that's right).
Would you accept a PR for the existing prisma adapter to change the field names (as breaking change)? Then people can decide on their own if they want to do the hassle with the manual migration or switch to one of the database-specific prisma adapters. What do you think?

I don't see a difference between ditching the current adapter and introducing a breaking change to the existing one. They both require some sort of migration.

Closing this since I totally forgot that error handling is going to be more confusing with the change. Using raw queries will throw the SQLite/MySQL/Postgres errors instead of a Prisma error.


fix(ledger): non-zero index jwt signing broken

Try out this version of the Hiro Wallet - download extension builds.

Fixes JWT signing because of incorrect dataPublicKey being included in payload
cc/ @friedger

@fbwoolf let's get this in the release PR too 🙏🏼

@kyranjamie There was an unused isUndefined import

whoopsie

@fbwoolf let's get this in the release PR too 🙏🏼

Yep, will add it today.


Only run GH-pages update on push to main branch

Fixes GHA errors on cloned repositories (assuming you don't touch the main branch)

Thanks @andrewwhitehead


Opacity animations not working on Android with the native driver

RN Version
react-native-cli: 2.0.1
react-native: 0.63.3
Environment Info
System:
OS: Windows 10 10.0.19041
CPU: (12) x64 Intel(R) Core(TM) i7-8750H CPU @ 2.20GHz
Memory: 7.62 GB / 15.85 GB
Binaries:
Node: 12.18.1 - C:\Program Files\nodejs\node.EXE
Yarn: 1.22.4 - C:\Program Files (x86)\Yarn\bin\yarn.CMD
npm: 6.14.5 - C:\Program Files\nodejs\npm.CMD
Watchman: Not Found
SDKs:
Android SDK: Not Found
Windows SDK: Not Found
IDEs:
Android Studio: Version  <IP_ADDRESS> AI-192.7<IP_ADDRESS>41897
Visual Studio: Not Found
Languages:
Java: 1.8.0_221 - /c/Program Files/Java/jdk1.8.0_221/bin/javac
Python: 3.7.4 - /c/Users/34683/AppData/Local/Programs/Python/Python37-32/python
npmPackages:
@react-native-community/cli: Not Found
react: ^16.13.1 => 16.13.1
react-native: ^0.63.3 => 0.63.3
react-native-windows: ^0.63.3 => 0.63.3
npmGlobalPackages:
react-native: Not Found
Problem
I updated my RN version, and for some reason, the opacity animations are not working now on Android if they run on the native driver.
In your code I have seen that opacity is still in the WHITE_LIST
/**
 * Styles allowed by the native animated implementation.
 *
 * In general native animated implementation should support any numeric property that doesn't need
 * to be updated through the shadow view hierarchy (all non-layout properties).
 */
const STYLES_WHITELIST = {
  opacity: true,
  transform: true,
  borderRadius: true,
  borderBottomEndRadius: true,
  borderBottomLeftRadius: true,
  borderBottomRightRadius: true,
  borderBottomStartRadius: true,
  borderTopEndRadius: true,
  borderTopLeftRadius: true,
  borderTopRightRadius: true,
  borderTopStartRadius: true,
  elevation: true,
  zIndex: true,
  /* ios styles */
  shadowOpacity: true,
  shadowRadius: true,
  /* legacy android transform properties */
  scaleX: true,
  scaleY: true,
  translateX: true,
  translateY: true,
};

but running this simple code doesn't work on my Samsung Galaxy S8+
     Animated.parallel([
        Animated.timing(hidePanel, {
          toValue: 0,
          duration: 300,
          delay: 1500,
          easing: Easing.linear,
          useNativeDriver: true,
        }),
        Animated.timing(hideLogo, {
          toValue: 0,
          duration: 300,
          delay: 1000,
          easing: Easing.linear,
          useNativeDriver: true,
        }),
      ]).start();

        ...

       <Animated.View
        style={[
          StyleSheet.absoluteFill,
          {
            opacity: hidePanel,
          },
        ]}
      >
         ...

Why is this happening? This is working good on IOS, but not on Android.

I have the same issue. For some reason appending testID prop to Animated.View resolves the issue for me.

With Expo SDK 38, I was able to use it without problems  on both operative systems. Anyways, this solution seems to be little tricky but works!
Thank you!

Hey all! Thanks for sharing a solution @michalpolakfortum, could you share a code snippet for future people who may stumble on this issue.
 Opacity is still in the “white list” of animations supported by the native thread.
The solution solves the problem but it seems to be a trick to make this work:
   `<Animated.View
           testId=“FilmsContainer”
           style={{opacity}}
     />`

It's just one of possible solutions. As mentioned in https://github.com/facebook/react-native/issues/25318 another solution is to start opacity animation from different value than 1.
It's an old issue and some pulls were already created for it: https://github.com/facebook/react-native/pull/25361. It seems that in certain circumstances component is being optimised away.
According to docs testID does the same, that's why it works as well.

Hi, I am also seeing this issue but do not start my animation at 1. Works perfectly on iOS and when useNativeDriver is false. My opacity animation is an interpolation on a scroll. Also no luck with setting a random testID. And also only started happening recently, definitely worked in the past.
"react": "16.13.1"
"react-native": "0.63.3"

  const scrollY = new Animated.Value(0);
  const headerOpacity = scrollY.interpolate({
    inputRange: [0, 96],
    outputRange: [0.01, 0.95],
    extrapolate: 'clamp',
  });
  const onScroll = Animated.event(
    [
      {
        nativeEvent: {
          contentOffset: {
            y: scrollY,
          },
        },
      },
    ],
    { useNativeDriver: true },
  );

      <Animated.View
        style={[styles.header, { opacity: headerOpacity }]}
        testID="something"
      />

Thanks for any help!


Token refresh vulnerable to Replay Attacks

Hello to everybody,
I'm quite new on simplejwt and I'm looking at it with curiosity, first of all congratulation for this wonderfull library.
As far as I know the refresh token would be used one time only, following the tests I made I saw that the refresh token could be used and reused again and again, until it won't expire. This is justified by the absence of persistence in simplejwt BUT this expose us to a warning, regarding the replay attacks.
I'm quite sure that this topic would sound completely out of scope, standing of the design principles behind the stateless approach of simplejwt, however I would prefer to rely on a persistent storage regarding tokens management and also the uniqueness of them, until they expires or be refreshed.

@peppelinux Concern well-received! Yea, I warn about DOS attacks a lot here, especially on the topic of getting the token. I always recommend django-ratelimit or DRF's internal throttling system (recently added the update_last_login setting, but I had... strong feelings against it for a long time), but, yes, this is out of our scope.
You mention a persistent storage: we have a blacklist app (that apparently raised a lot of issues in the admin panel. The functionality itself is only in question for one GitHub issue). Additionally, SimpleJWT is not entirely stateless; we store the User ID in the token claim. We do the regular django.contrib.auth.authenticate unless you use the "Experimental Feature" which isn't much experimental, it just avoids the database hit and accepts the User ID to be true since we assume your signing key is still safe.
When it came to mobile development, I saw a problem in which a user frequently opens and closes the app. For throttling the views, I had to take into account the type of app I was developing and lower the throttling rate to be more like a burst rate.
Hope that helps! If you've got any more concerns of questions, leave em here.


MARP-676 Update version to Ivy 11.3

The 11.3. version should now include also all changes made in the last 2 weeks (i.e. bugfixing and including OAUTH2)


Avoid using NetBIOS when direct_tcp is set to True

Fix #24.

An alternative solution would be to set NETBIOS to None in case direct_tcp is True and then alter get_hostname_and_ip to avoid using NetBIOS.

Hi @frafra, Sorry for the delay!
I'd be in favor of the following solution:

make get_hostname_and_ip accept None for the netbios argument, and only run lines 78-90 if netbios is not None.
make SMBFS.__init__ pass its NETBIOS instance only if direct_tcp is False: self._server_name, self._server_ip = utils.get_hostname_and_ip(
     host,
     None if direct_tcp else self.NETBIOS,
     timeout=timeout,
     name_port=name_port
 )

This way we can keep the code duplication minimal, while still supporting swapping the IP and host in the input tuple, and properly report if one of the two is missing like before.

@althonos no worries :)
It seems OK to me now.

Thanks! I added some extra tests just to make sure it works as expected.


fix(bug): Ensure future processing when error is unretryable

Description
When an object is being processed and hits an unretryable error, the object is dropped and is not reinserted back into the queue to be processed. However, the received map still has the reference to that object so if the Sensor comes back up and resends an event then it will be deduped by the received map even though the object was never successfully processed. This will remain until Central is bounced and then the received map will be reset because it is simply in-memory. Therefore, on an unretryable failure purge the received map of the reference to the object in order to allow future events to successfully be processed
Checklist

[ ] Investigated and inspected CI test results
[ ] Unit test and regression tests added
[ ] Evaluated and added CHANGELOG entry if required
[ ] Determined and documented upgrade steps
[ ] Documented user facing changes (create PR based on openshift/openshift-docs and merge into rhacs-docs)

If any of these don't apply, please comment below.
Testing Performed
Here I tell how I validated my change
TODO(replace-me)
Use this space to explain how you validated that your change functions exactly how you expect it.
Feel free to attach JSON snippets, curl commands, screenshots, etc. Apply a simple benchmark: would the information you
provided convince any reviewer or any external reader that you did enough to validate your change.
It is acceptable to assume trust and keep this section light, e.g. as a bullet-point list.
It is acceptable to skip testing in cases when CI is sufficient, or it's a markdown or code comment change only.
It is also acceptable to skip testing for changes that are too taxing to test before merging. In such case you are
responsible for the change after it gets merged which includes reverting, fixing, etc. Make sure you validate the change
ASAP after it gets merged or explain in PR when the validation will be performed.
Explain here why you skipped testing in case you did so.
Have you created automated tests for your change? Explain here which validation activities you did manually and why so.
Reminder for reviewers
In addition to reviewing code here, reviewers must also review testing and request further testing in case the
performed one does not seem sufficient. As a reviewer, you must not approve the change until you understand the
performed testing and you are satisfied with it.

I pulled this down and built some images with https://github.com/stackrox/stackrox/pull/9208 to test and it took care of the deduper message in the sensor logs after multiple restarts.

/retest


Looking for maintainers

It seems I cannot dedicate any time to OSS currently, so I'm looking for maintainers to triage/merge PRs and to publish occasional releases, so that people who rely on this library do not have to wait months for responses/fixes/features.

I'm using this crate on a pre-production project for my company, since i'll have to make PRs anyway to improve the crate i'd gladly help out on the other things too :)

We're also using this crate in a similar way. I don't think I have the time to be a maintainer, but I'll look into contributing back at least a bit.

Thank you @Wicpar, I have invited you as a collaborator, I think I'll have to set up CI so releases are not blocked on me, or at least grant you access on crates.io.

Thank you @Wicpar, I have invited you as a collaborator, I think I'll have to set up CI so releases are not blocked on me, or at least grant you access on crates.io.

Thanks, i'll try to get things in order before i do any changes :)

Just wanted to jump in and thank @tamasfe for all your work so far, and thanks @Wicpar for taking over. I love this crate and glad to see it's still being maintained! 🙏🏻

I'd love to help maintain this project! @Wicpar @tamasfe if there is anything I can do to help, please let me know.

@tamasfe if you want me to publish the changes on crates.io you can add me (Wicpar) to the owners in the crate settings.

@tamasfe if you want me to publish the changes on crates.io you can add me (Wicpar) to the owners in the crate settings.

Sure, thank you. I've sent an invite.

@tamasfe i don't have the rights to publish updates to axum-jsonschema, i just buped the version and changelog. I did update aide to 0.12.0 though. Putting the other crates online.

Hi, I'd like to contribute to this nice crate as I see something inconvenient. It lays out a nice framework, though many places could be improved like in #95

I think I can help too :blush:, thanks for this awesome project @tamasfe :pray: :heart: !

Hey, it looks like once again maintenance is very slow. Are you still looking to add more maintainers @tamasfe @Wicpar?

Sorry everyone about the long inactivity, yes, help would be much appreciated here. If anyone is still interested in managing PRs and in general steering the project, I'd be happy to send invitation(s).

Still interested!

Also interested

@tamasfe, we maintain a fork of aide internally and would love it if we didn't have to (by having upstream be maintained). I can vouch for @svix-jplatte (he's also one of the maintainers of axum).

Thank you, I have invited @jplatte (let me know if you wish to use @svix-jplatte instead) and @JakkuSakura.
You both seem to be reasonable people so I don't think there will be any conflicts. Still, if anything arises, please ping me.
Thanks for the help again, it's much appreciated.

@tamasfe thank you! How about publish rights on crates.io? The most immediate need we have from aide at work is releasing what's already merged to main.

Ideally a publish CD flow would be great, I have added you on crates.io as owners as well for now so you can publish the crates there, the crates are aide and aide-macros.

@tamasfe thank you. I accepted the invitations for the repo and crates.io

Alright, I think this issue can be closed, thanks again.


Fish

fishe

Hope you know this means you're an official repoanon now and by me accepting your pull request your flow will be immediately absorbed by the repo. Enjoy your free tulpa!


Access denied while uninstalling preinstalled windows app

Brief description of your issue
While running a winget uninstall command I am getting a access denied. I am pretty sure it worked some weeks ago without issues.
Steps to reproduce
Sign in with a new user without administrator permissions. Restart the PC and then run a uninstallation command to uninstall preinstalled software.
It works without any issues for manually installed winget apps, but cant get it to work for any preinstalled windows applications.
winget uninstall Microsoft.MicrosoftOfficeHub_8wekyb3d8bbwe

Found Microsoft 365 (Office) [Microsoft.MicrosoftOfficeHub_8wekyb3d8bbwe]
Starting package uninstallation...
Unexpected error running command:
0x80070005 : Access denied

Winget Log:
2023-02-20 12:06:32.271 [CORE] WinGet, version [1.4.10173], activity [{5ED5F412-0F3B-42A2-917E-0F39EA5A36F8}]
2023-02-20 12:06:32.271 [CORE] OS: Windows.Desktop v10.0.22621.1105
2023-02-20 12:06:32.271 [CORE] Command line Args: "C:\Users\Test.IT-Global\AppData\Local\Microsoft\WindowsApps\winget.exe" uninstall Microsoft.MicrosoftOfficeHub_8wekyb3d8bbwe
2023-02-20 12:06:32.271 [CORE] Package: Microsoft.DesktopAppInstaller v1.19.10173.0
2023-02-20 12:06:32.271 [CORE] IsCOMCall:0; Caller: winget-cli
2023-02-20 12:06:32.277 [CLI ] WinGet invoked with arguments: 'uninstall' 'Microsoft.MicrosoftOfficeHub_8wekyb3d8bbwe'
2023-02-20 12:06:32.277 [CLI ] Found subcommand: uninstall
2023-02-20 12:06:32.277 [CLI ] Leaf command to execute: root:uninstall
2023-02-20 12:06:32.282 [CLI ] Executing command: uninstall
2023-02-20 12:06:32.293 [REPO] GetCurrentSourceRefs: Source named 'microsoft.builtin.desktop.frameworks' from origin Default is hidden and is dropped.
2023-02-20 12:06:32.293 [REPO] Default source requested, multiple sources available, adding all to source references.
2023-02-20 12:06:32.293 [REPO] Adding to source references msstore
2023-02-20 12:06:32.293 [REPO] Adding to source references winget
2023-02-20 12:06:32.293 [REPO] Source past auto update time [5 mins]; it has been at least 22 mins
2023-02-20 12:06:32.294 [REPO] Source past auto update time [5 mins]; it has been at least 22 mins
2023-02-20 12:06:32.561 [CORE] Examining extension: PFN = Microsoft.Winget.Source_8wekyb3d8bbwe, ID = IndexDB
2023-02-20 12:06:32.561 [CORE] Found matching extension.
2023-02-20 12:06:32.566 [REPO] Remote source data was not newer than existing, no update needed
2023-02-20 12:06:32.576 [REPO] Multiple sources available, creating aggregated source.
2023-02-20 12:06:32.576 [REPO] Adding to aggregated source: msstore
2023-02-20 12:06:32.577 [REPO] Sending http GET request to: https://storeedgefd.dsx.mp.microsoft.com/v9.0/information
2023-02-20 12:06:32.698 [REPO] Response status: 200
2023-02-20 12:06:32.698 [REPO] Sending http GET request to: https://storeedgefd.dsx.mp.microsoft.com/v9.0/information
2023-02-20 12:06:32.716 [REPO] Response status: 200
2023-02-20 12:06:32.716 [REPO] Adding to aggregated source: winget
2023-02-20 12:06:32.725 [CORE] Examining extension: PFN = Microsoft.Winget.Source_8wekyb3d8bbwe, ID = IndexDB
2023-02-20 12:06:32.725 [CORE] Found matching extension.
2023-02-20 12:06:32.820 [REPO] Opening SQLite Index for ImmutableRead at 'C:\Program Files\WindowsApps\Microsoft.Winget.Source_2023.220.1029.760_neutral__8wekyb3d8bbwe\Public\index.db'
2023-02-20 12:06:32.820 [SQL ] Opening SQLite connection #1: 'C:\Program Files\WindowsApps\Microsoft.Winget.Source_2023.220.1029.760_neutral__8wekyb3d8bbwe\Public\index.db' [1, 40]
2023-02-20 12:06:32.821 [REPO] Opened SQLite Index with version [1.6], last write [2023-02-20 10:28:25.000]
2023-02-20 12:06:32.925 [REPO] Creating PredefinedInstalledSource with filter [None]
2023-02-20 12:06:32.926 [REPO] Creating new SQLite Index [4294967295.4294967295] at ':memory:'
2023-02-20 12:06:32.926 [SQL ] Opening SQLite connection #2: ':memory:' [6, 0]
2023-02-20 12:06:32.977 [REPO] Reading MSI UpgradeCodes
2023-02-20 12:06:32.983 [REPO] Examining ARP entries for Machine | X64
2023-02-20 12:06:33.005 [REPO] Examining ARP entries for Machine | X86
2023-02-20 12:06:33.026 [REPO] Reading MSI UpgradeCodes
2023-02-20 12:06:33.030 [REPO] Examining ARP entries for User | X64
2023-02-20 12:06:33.561 [REPO] Opening SQLite Index for ReadWrite at 'C:\Users\Test.IT-Global\AppData\Local\Packages\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe\LocalState\StoreEdgeFD\installed.db'
2023-02-20 12:06:33.561 [SQL ] Opening SQLite connection #3: 'C:\Users\Test.IT-Global\AppData\Local\Packages\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe\LocalState\StoreEdgeFD\installed.db' [2, 0]
2023-02-20 12:06:33.563 [REPO] Opened SQLite Index with version [1.6], last write [2023-02-14 17:05:33.000]
2023-02-20 12:06:33.618 [REPO] Opening SQLite Index for ReadWrite at 'C:\Users\Test.IT-Global\AppData\Local\Packages\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe\LocalState\Microsoft.Winget.Source_8wekyb3d8bbwe\installed.db'
2023-02-20 12:06:33.618 [SQL ] Opening SQLite connection #4: 'C:\Users\Test.IT-Global\AppData\Local\Packages\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe\LocalState\Microsoft.Winget.Source_8wekyb3d8bbwe\installed.db' [2, 0]
2023-02-20 12:06:33.620 [REPO] Opened SQLite Index with version [1.6], last write [2023-02-14 17:01:21.000]
2023-02-20 12:06:33.668 [REPO] Sending http POST request to: https://storeedgefd.dsx.mp.microsoft.com/v9.0/manifestSearch
2023-02-20 12:06:33.687 [REPO] Response status: 200
2023-02-20 12:06:33.701 [CLI ] Found one app. App id: Microsoft.MicrosoftOfficeHub_8wekyb3d8bbwe App name: Microsoft 365 (Office)
2023-02-20 12:06:33.714 [FAIL] WindowsPackageManager.dll!00007FFF16AD201E: LogHr(1) tid(29d0) 80070005 Zugriff verweigert

2023-02-20 12:06:33.714 [CLI ] Caught winrt::hresult_error: 0x80070005 : Zugriff verweigert

Expected behavior
The uninstallaton to work
Actual behavior
Winget throws an error and wont uninstall the program
Environment
Windows-Paket-Manager v1.4.10173
Copyright (c) Microsoft Corporation. Alle Rechte vorbehalten.

Windows: Windows.Desktop v10.0.22621.1105
Systemarchitektur: X64
Paket: Microsoft.DesktopAppInstaller v1.19.10173.0

Protokolle: %LOCALAPPDATA%\Packages\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe\LocalState\DiagOutputDir

Benutzereinstellungen: %LOCALAPPDATA%\Packages\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe\LocalState\settings.json

I'm having a similar issue. These look related to #2928
If I install the Intune Company Portal with or without winget I then can't uninstall it using unelevated winget.

Related to:

#2928


Create an @Transactional annotation in order to remove some of the boilerplate in the services

Create an @Transactional annotation in order to remove some of the boilerplate in the services

I'm gonna move this to a later milestone. There is a considerable amount of work here because kotlin+kapt does not allow (AFAIK) for AST transformations, only code generation.


refactor(tibuild): rename internalpkg to internal

rename the pkg name.
extract complex steps of PipelineTrigger to triggerJenkinsJob.
simplfy the gin bind steps.

Signed-off-by: wuhuizuo<EMAIL_ADDRESS>

/approve


Make pathFinder more efficient about getting orderbooks

Describe the solution you'd like
Right now pathFinder grabs orderbooks for its calculations separately for each payment path, and this leads to duplicate API calls; if XLM-BTC is in more than one path, pathFinder queries Horizon that pair for each path that contains it.
Requirements

Have pathFinder generate a standalone list of the trading pairs it needs when initialized, idependant of the individual path records
Query each pair once for each cycle and use the query response for all paths that need it

This could be better accomplished with streaming mode: https://www.stellar.org/developers/horizon/reference/streaming.html

closed by https://github.com/Reidmcc/rockfish/pull/19


Adds logs:CreateLogGroup to ECS Exec Role

Info
This allows the ECS Service to create the log group so it does need to be created by the module user before hand.
Currently I add this permission to the ECS Exec Role after I invoke the module, so that it has this permission and I don't need to worry about creating that logs group for the service / task, but it would be nice to have that completely abstracted away from the module user.

/codefresh run test

@maximmi updated README via readme/build. Do you still need access? Happy to do so if still needed, but figured this would be faster if that's all that is needed.

/codefresh run test

@Gowiem here is new release: https://github.com/cloudposse/terraform-aws-ecs-alb-service-task/releases/tag/0.23.0

@maximmi Thank you! Anything I can do to move #45 along as well?


Update README.md

Unarchived the repo to merge this. Ping me to archive again after this is merged.

@tigrannajaryan, all set now!


basic parser tracing

It would be nice to be able to output a trace of all the rules including cache hit counts.
This is a start.

[ ] Remove fs dep
[ ] Add cache counts
[ ] Figure out output format

Definitely sounds like a useful tool for optimization. It reminds me of the current civet verbose mode, which I still use for debugging parsing sometimes. Maybe this could replace/improve on that? Or at least be helpful for debugging purposes too.


Keyboard navigation broken in Output/Terminal select box

Open Terminal
Open select box from that view
Press DownArrow

🐛 Select box closes

Ah yes, this is our custom select box which we only use on Linux and Windows and thus the reason why I did not hit this problem.
I have pushed a fix for this. I think it should be good, even though I do not like changing the custom select box code.


https://security.snyk.io/vuln/SNYK-JAVA-COMFASTERXMLWOODSTOX-2928754 vulnerability

latest version is affected by https://security.snyk.io/vuln/SNYK-JAVA-COMFASTERXMLWOODSTOX-2928754
is there a fix planned?

Seeing the same issue as well. Any timeline on when the next release will be with the patched library?

I've submitted a second PR that fixes all the remaining critical vulns.


Update readme in examples, remove widgets, add gallery

The README for the examples directory (https://github.com/flutter/flutter/blob/master/examples/README.md) is a bit out of date. At quick glance, we should add a link to the gallery. Also, remove a mention of widgets. Also, we probably want to update the instructions on how to get and build the examples.

https://github.com/flutter/flutter/pull/3434

Fixed in #3434


No debug output to console

Using nodered 0.15.3 on Raspbian Jessie with kernel 4.9.46-v7
I observe despite changing the debug node output to "debug tab and console", the browser console never receives debug messages. Neither does a function node containing node.error("ERROR"); node.log("LOG") work: only the "ERROR" message is displayed in the debug tab.
I get this problem using Chromium 60.0.3112.78 on RPi3 running Ubuntu Mate, and with Chromium 56 & Firefox 43.0.1 on Windows 7.

Enabling console output means to output to the console where Node-RED is running on Raspberry Pi not the browser console.
Depending on how you started Node-RED will depend where this ends up, if you started it manually with the node-red command then the log will be in the console where you started it. If you are running Node-RED as a  service then the output will be in the log, you can view the log with the node-red-log command.
Also as mentioned in the Contribution guide, basic usage questions should be asked in the Slack team or on the Google Group mailing list, both of these are linked to from the Node-RED home page, rather than raising issues.

The messages go to the system console not the browser console

Oops, I had to assume it was the browser console because I always encounter Node-RED as a service.

To be fair, console is an ambiguous label to use - we should improve that.


test that to_excel writes a file

Simple test additions to check the potential issue raised by @Chilipp in #149

Hey @danielhuppmann, if I remember correctly, you develop mostly on mac. Could you take a look at this? Thanks again @Chillip for bringing it to our attention.

Should fix #149

Given the timeliness needed, will merge directly now.


missing headers (using Fastify)

We are using @fastify/ cors and cookies and the headers are missing when using this library.
If I change this line (https://github.com/enisdenjo/graphql-sse/blob/061b0fc48b3b2a892fde39de2dac3c67f5623d44/src/use/fastify.ts#L90) like this (
    reply.raw.writeHead(init.status, init.statusText, {...reply.getHeaders(), ...init.headers});

) then the cors headers are not missing, but the cookie header is still missing.

Hey there, the Cookie header does not come from the server - it comes only from  the client (see MDN).
However, a server can send a Set-Cookie header though. Can you try that?
Regarding the rest of the headers, a PR is very welcome - would you consider opening one? Thanks in advance!

Yes, that's what is not working as well. We are using @fastify/cookie to set a cookie from the server side using Set-Cookie.
Sure, I can for sure create a pull request for the cors case. However the missing Set-Cookie header is a bit unclear for me. I am not sure how should I get it. We set the cookie from a (GraphQL) (mutation) resolver (using @fastify/cookie).

Is the set-cookie header present without graphql-sse? Maybe it is not in the getHeaders (you can check that by console logging the results)?

Yes, it is. Yes it is not in the getHeaders.
Anyway. Now we are using the GraphQL Yoga server which (after resolving 2 issues related to it) seems to work as expected.

:tada: This issue has been resolved in version 2.5.3 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

Sorry for waiting so long! This issue has been fixed with https://github.com/enisdenjo/graphql-sse/commit/134c1b022599e5c403d7204eda61106bac34216a and released in v2.5.3. Please check it out, thanks!


Fix a few typos

What issue does this PR address?
A few typos.
Does this PR introduce a breaking change?
On the contrary.
Please check if the PR fulfills these requirements

[ ] The commit follows our guidelines
[ ] Unit Tests for the changes have been added (for bug fixes / features)

Other information:
Great documentation guys, well done!

Thanks! Good to see you here!


feat: impl Default for GenerateArgs and TemplatePath

Provides a Default trait implementation for GenerateArgs and
TemplatePath in order to provide better ergonomics when using
cargo-generate as a lib.

Also fixes clippy warnings.

Hi! I have a use case on https://github.com/infinyon/fluvio/pull/2630 where I want to use this crate as a lib in order to also provide some of the project logic along with the project generation. While writing such PR I noticed I could reduce some boilerplate using a call to ..Default::default() when building these structs:
https://github.com/EstebanBorai/fluvio/blob/feat/%232621-generate-new-smart-module/crates/fluvio-cli/src/client/smartmodule/generate.rs#L32-L38
https://github.com/EstebanBorai/fluvio/blob/feat/%232621-generate-new-smart-module/crates/fluvio-cli/src/client/smartmodule/generate.rs#L41-L59

@EstebanBorai do you think you could rebase and go thru the conflics?

@EstebanBorai do you think you could rebase and go thru the conflics?

Conflicts fixed! Thanks for taking the time.

Hi @sassman, any news on this? I would love to use this changes in a project!
Thanks in advance!

LGTM 🚀

Great @sassman! I would love to use this version in my project, when could I expect a next release?
Thanks in advance!

LGTM 🚀

Great @sassman! I would love to use this version in my project, when could I expect a next release?
Thanks in advance!

the change is out with v0.17.0 today on 2022-11-07


Problems finding Python on manylinux

Scikit-build-core seems to have problems finding Python on manylinux containers since recently.
A simple example demonstrating the problem:
git clone https://github.com/pybind/scikit_build_example
cd scikit_build_example
pipx run cibuildwheel --platform linux

results in many warnings of the sort
 *** scikit-build-core 0.4.8 using CMake 3.27.1 (wheel)
 *** Configuring CMake...
 2023-08-21 06:43:26,999 - scikit_build_core - WARNING - libdir/ldlibrary: /opt/_internal/cpython-3.8.17/lib/libpython3.8.a is not a real file!
 2023-08-21 06:43:27,000 - scikit_build_core - WARNING - Can't find a Python library, got libdir=/opt/_internal/cpython-3.8.17/lib, ldlibrary=libpython3.8.a, multiarch=aarch64-linux-gnu, masd=None

These errors seem to have appeared when CMake 3.27 was released, although I am not 100% certain that's the issue here. Most likely something related to the newer FindPython becoming the default.
I am currently in the process of migrating some of the tools we develop from setuptools to scikit-build-core (see, e.g., https://github.com/cda-tum/mqt-qcec/pull/301) and cibuildwheel on linux keeps failing on me. From the logs (https://github.com/cda-tum/mqt-qcec/actions/runs/5922551488/job/16056693817?pr=301#step:4:257), I can extract the following
-- pybind11 v2.12.0 dev1
  CMake Error at /opt/_internal/pipx/venvs/cmake/lib/python3.10/site-packages/cmake/data/share/cmake-3.27/Modules/FindPackageHandleStandardArgs.cmake:230 (message):
    Could NOT find Python (missing: Python_LIBRARIES Development
    Development.Embed) (found suitable version "3.8.17", minimum required is
    "3.6")
  Call Stack (most recent call first):
    /opt/_internal/pipx/venvs/cmake/lib/python3.10/site-packages/cmake/data/share/cmake-3.27/Modules/FindPackageHandleStandardArgs.cmake:600 (_FPHSA_FAILURE_MESSAGE)
    /opt/_internal/pipx/venvs/cmake/lib/python3.10/site-packages/cmake/data/share/cmake-3.27/Modules/FindPython/Support.cmake:3824 (find_package_handle_standard_args)
    /opt/_internal/pipx/venvs/cmake/lib/python3.10/site-packages/cmake/data/share/cmake-3.27/Modules/FindPython.cmake:574 (include)
    extern/mqt-core/extern/pybind11/tools/pybind11NewTools.cmake:35 (find_package)
    extern/mqt-core/extern/pybind11/tools/pybind11Common.cmake:183 (include)
    extern/mqt-core/extern/pybind11/CMakeLists.txt:210 (include)

which kind of points to pybind11 not being able to correctly detect Python. So maybe that's a separate issue.
Any help is appreciated!

Try find_package(Python3) (instead of find_package(Python)) just in case

Try find_package(Python3) (instead of find_package(Python)) just in case.
Edit: Oh I looked at your PR and you have it. Why do you include the 3.8 though? I see that the venv is for 3.10 and it is not piccked up

The call trace from above is not from a find(Python ...) call I have control over. It comes straight from pybind11 that is being used as a submodule here: https://github.com/cda-tum/mqt-core/blob/cb3420728d60f4c791fb042814341073d35b73f1/src/CMakeLists.txt#L96-L97
The respective CMake code is being run before anything in the top-level project (https://github.com/cda-tum/mqt-qcec/blob/scikit-build-core/src/python/CMakeLists.txt) is executed.
I just managed to get around the build errors by removing the set(PYBIND11_FINDPYTHON ON) I had placed before the pybind11 import. I guess that part is rather an issue with pybind11 than with scikit-build-core though.
As for the 3.8: that was (blindly) adapted from https://github.com/wjakob/nanobind_example/blob/b372b366057d344e94dd8beb894fe308b276cee9/CMakeLists.txt#L28-L31.
Might be off-topic for this issue, but should that even be considered an error?
Even with all the above, the scikit-build-core warnings from the issue description are still present.

As for the 3.8: that was (blindly) adapted from https://github.com/wjakob/nanobind_example/blob/b372b366057d344e94dd8beb894fe308b276cee9/CMakeLists.txt#L28-L31.
Might be off-topic for this issue, but should that even be considered an error?

I was concerned how FindPython marks COMPATIBLE_VERSION. It seems to work as major version so it is all ok.

The call trace from above is not from a find(Python ...) call I have control over. It comes straight from pybind11 that is being used as a submodule here: https://github.com/cda-tum/mqt-core/blob/cb3420728d60f4c791fb042814341073d35b73f1/src/CMakeLists.txt#L96-L97
The respective CMake code is being run before anything in the top-level project (https://github.com/cda-tum/mqt-qcec/blob/scikit-build-core/src/python/CMakeLists.txt) is executed.
I just managed to get around the build errors by removing the set(PYBIND11_FINDPYTHON ON) I had placed before the pybind11 import. I guess that part is rather an issue with pybind11 than with scikit-build-core though.

Indeed you should configure the external packages. One note, it's supposed to be set(PYBIND11_FINDPYTHON ON CACHE BOOL) in order for it to be overwritten e.g. in the top level project. Pybind's cmake file is rather old and hard to follow. You can also follow PYBIND11_NOPYTHON to avoid loading python altogether there. But why do you need to build the pybind11 manually? You could get it from PyPI, distro package etc., e.g. getting_started example. You might have to configure the pybind11_ROOT or equivalents to detect the bundled cmake files.
As for the warning itself:
CMake Warning (dev) at extern/mqt-core/extern/pybind11/tools/FindPythonLibsNew.cmake:98 (find_package):

This would probably be resolved in https://github.com/pybind/pybind11/pull/4786

I was concerned how FindPython marks COMPATIBLE_VERSION. It seems to work as major version so it is all ok.

Thanks for the clarification.

But why do you need to build the pybind11 manually? You could get it from PyPI, distro package etc., e.g. getting_started example. You might have to configure the pybind11_ROOT or equivalents to detect the bundled cmake files.

Mostly historic reasons and how our projects evolved. We have one core package that provides pybind11 as a submodule. This core package is then added as a submodule to many top-level projects that all build their own python bindings based on pybind (using that submodule). I'll probably have to rework that system at some point, but it is what we are working with right now.

As for the warning itself:
CMake Warning (dev) at extern/mqt-core/extern/pybind11/tools/FindPythonLibsNew.cmake:98 (find_package):

This would probably be resolved in pybind/pybind11#4786

Yeah. But just to be clear; I was concerned about these warnings:

2023-08-21 06:43:26,999 - scikit_build_core - WARNING - libdir/ldlibrary: /opt/_internal/cpython-3.8.17/lib/libpython3.8.a is not a real file!
2023-08-21 06:43:27,000 - scikit_build_core - WARNING - Can't find a Python library, got libdir=/opt/_internal/cpython-3.8.17/lib, ldlibrary=libpython3.8.a, multiarch=aarch64-linux-gnu, masd=None

Hmm, I took a closer look and it is weird because you are supposed to be hitting this branch:
https://github.com/pybind/pybind11/blob/b9359ceadbf4d4b22509b684eea107d055b77901/tools/pybind11Common.cmake#L176-L184
Which does not call FindPythonLibsNew. Can you run it with trace to see why that one is running? Python3_FOUND should be set to True or at least PYBIND11_FINDPYTHON should be set to ON manually to overwrite it.

I just created a scratch PR in our core repository to debug this further; see https://github.com/cda-tum/mqt-core/pull/404. The call stack (https://github.com/cda-tum/mqt-core/actions/runs/5924226258/job/16061359774?pr=404#step:3:261) in the newly added test workflow actually shows that that branch is hit if PYBIND11_FINDPYTHON. It still fails though.
  Call Stack (most recent call first):
    /opt/_internal/pipx/venvs/cmake/lib/python3.10/site-packages/cmake/data/share/cmake-3.27/Modules/FindPackageHandleStandardArgs.cmake:600 (_FPHSA_FAILURE_MESSAGE)
    /opt/_internal/pipx/venvs/cmake/lib/python3.10/site-packages/cmake/data/share/cmake-3.27/Modules/FindPython/Support.cmake:3824 (find_package_handle_standard_args)
    /opt/_internal/pipx/venvs/cmake/lib/python3.10/site-packages/cmake/data/share/cmake-3.27/Modules/FindPython.cmake:574 (include)
    extern/pybind11/tools/pybind11NewTools.cmake:35 (find_package)
    extern/pybind11/tools/pybind11Common.cmake:183 (include)
    extern/pybind11/CMakeLists.txt:210 (include)

It's this find_package(Python ...) call that triggers the error. I'll probably file this as an issue over at the pybind11 repo as it does not seem to be related to scikit-build-core.

Please run find_package(Python3) before importing pybind. Note that find_package is directory scoped so it should be in a top level CMakeLists.txt. That section is if-guared by Python3_FOUND so if find_package(Python3) is run before-hand, it should not be triggered. But good point, upstream should change it Python3 as well, it's less error-prone.

Please run find_package(Python3) before importing pybind. Note that find_package is directory scoped so it should be in a top level CMakeLists.txt. That section is if-guared by Python3_FOUND so if find_package(Python3) is run before-hand, it should not be triggered. But good point, upstream should change it Python3 as well, it's less error-prone.

While that does fix the issue (see https://github.com/cda-tum/mqt-core/actions/runs/5924838270/job/16063131999?pr=404#step:3:255), this still seems like an issue in pybind to me. It should not be required to bypass the "modern" Python finder in Python. Note that adding find_package(Python REQUIRED COMPONENTS Interpreter Development.Module) before the pybind import (even with just Python and not Python3) does the trick.

Yes, it is partially a pybind issue, but also using find_package(Python3) before pybind is perfectly fine and many cases recommended. That ensures that you are finding the python version you need in the parent project. Same goes for the FetchContent I mentioned in your upstream. That allows a parent project to link to a different version of pybind, etc.

Yes, it is partially a pybind issue, but also using find_package(Python3) before pybind is perfectly fine and many cases recommended. That ensures that you are finding the python version you need in the parent project. Same goes for the FetchContent I mentioned in your upstream. That allows a parent project to link to a different version of pybind, etc.

Totally agreed and thanks for the recommendations! That only leaves the core warnings surfaced in this PR unresolved
*** scikit-build-core 0.4.8 using CMake 3.27.1 (wheel)
*** Configuring CMake...
2023-08-21 06:43:26,999 - scikit_build_core - WARNING - libdir/ldlibrary: /opt/_internal/cpython-3.8.17/lib/libpython3.8.a is not a real file!
2023-08-21 06:43:27,000 - scikit_build_core - WARNING - Can't find a Python library, got libdir=/opt/_internal/cpython-3.8.17/lib, ldlibrary=libpython3.8.a, multiarch=aarch64-linux-gnu, masd=None

Those are independent of the above pybind11 issues.

Those I'm afraid I'm not familiar with. It's on the container side of cibuild_wheel, @henryiii should be able to help with this when he's on.

The warning about the libraries can be ignored. Manylinux doesn't contain the Python libraries, since you aren't supposed to link to them and it saves space to delete them. The problem is you are making them wrong call for FindPython. If you request the "Development" component, you get both Development.Module and Development.Embed. Manylinux doesn't support Development.Embed, since the Python libraries are deleted from the image during creation. You must either follow Pybind11's docs (AHH! docs are wrong. Will need to fix!) and write:
find_package(Python REQUIRED COMPONENTS Interpreter Development.Module)
find_package(pybind11 CONFIG REQUIRED)

Or you can use
set(PYBIND11_FINDPYTHON ON)
find_package(pybind11 CONFIG REQUIRED)

I'm planning on improving the library not found warning a bit.

Actually the docs do include the correct way to refer to this in a callout with a warning about manylinux, and the reason the "wrong" version is shown is due to trying to support 3.15+ instead of 3.18+. IMO we should probably swap that.

Or you can use
set(PYBIND11_FINDPYTHON ON)
find_package(pybind11 CONFIG REQUIRED)

Thanks for the reply. I figured that the warning about the libraries isn't to important.
The snipped above does not work though, as it triggers https://github.com/pybind/pybind11/blob/b9359ceadbf4d4b22509b684eea107d055b77901/tools/pybind11NewTools.cmake#L35 which does request the Development component.

Fixing that in https://github.com/pybind/pybind11/pull/4805, thanks! I think most users either just use the default FindPythonInterp (bad), or call FindPython first (I hope).


Add load event support

Adds an event system an support for a single event: load which is fired right after clicky has finished loading.
This enables any script to interact with clicky before any events/goals have been sent out which can be useful for overriding clicky.domain for example.

Closing PR. The idea of this was to provide a way to override clicky's domain but the solution is not complete unless you can define the src of the loaded javascript file as well.


Unable to extract smart contract bytecode to textual format

Summary
Hello, I am trying to gather a large body of untyped plutus programs as a part of a test suite for a project. The project goal is to write a semantics for untyped plutus in K. Anyway, I have looked at the tests in this repository and now I would like to scrape cardanoscan for popular smart contracts and save them as a part of the test suite.
Here is an example of an entry showing the smart contract: https://cardanoscan.io/transaction/8a541f04e9ef10e78c4dc4707e0582a24ae0c6c95d2c7c7ee9d146d093598019?tab=contracts
I am trying to copy/paste the bytecode to a text file and somehow decode this to a textual untyped plutus program. I tried using the uplc convert program but it doesn't seem like this encoding is supported. My colleague and I were discussing this and he believes that this might be in the CBOR format. Although this was removed from tools like uplc, it looks like several mentions of CBOR remain in the v1 api here: https://github.com/input-output-hk/plutus/blob/b4adeb6cb5d4fbb4f94cf2d65e6ac961534c4fcd/plutus-ledger-api/src/Plutus/V1/Ledger/Api.hs#L199
it's likely that cardanoscan used API's that were using the CBOR deserialize function.
Either way, I am having a difficult time generating a textual representation of smart contracts and I was wondering if you had any suggestions on what I could do. If this is indeed the CBOR format, could you possibly add the conversion capability back to uplc? Is there a different website that you recommend where the smart contract is encoded in a format that is supported by uplc convert?
Steps to reproduce the behavior
1 go to the cardanoscan link above
2 save the contract bytecode to a text editor
3 use uplc convert to convert the bytecode to a textual (or flat) format
Actual Result
There aren't any formats supported in uplc convert to translate this format to a textual format
Expected Result
To be able to use uplc convert to convert smart contracts living on the cardano mainnet to a textual format.
Describe the approach you would take to fix this
No response
System info
Ubuntu 21.04

For the time being, one solution to get me going is for me to build this commit and try to run the proper uplc command:
commit 6727c37beaa5189db6d93b3fa944e32f1ff88395 (HEAD)
Author: Kenneth MacKenzie<EMAIL_ADDRESS>Date:   Mon Jul 12 09:17:27 2021 +0100

    Kwxm/record flat bm results (#3529)

When I check out this commit and build, I get the following result:
# cabal build plutus-core
Warning: Requested index-state 2021-07-07T00:00:00Z is newer than
'hackage.haskell.org'! Falling back to older state (2021-07-06T21:17:46Z).
Resolving dependencies...
cabal: Could not resolve dependencies:
[__0] trying: Win32-network-<IP_ADDRESS> (user goal)
[__1] trying: base-<IP_ADDRESS>/installed-<IP_ADDRESS> (dependency of Win32-network)
[__2] trying: lobemo-scribe-systemd-<IP_ADDRESS> (user goal)
[__3] next goal: libsystemd-journal (dependency of lobemo-scribe-systemd)
[__3] rejecting: libsystemd-journal-1.4.5 (conflict: pkg-config package
libsystemd>=209, not found in the pkg-config database)
[__3] rejecting: libsystemd-journal-1.4.4 (conflict:
base==<IP_ADDRESS>/installed-<IP_ADDRESS>, libsystemd-journal => base>=4.6 && <4.13)
[__3] skipping: libsystemd-journal-1.4.3, libsystemd-journal-1.4.2,
libsystemd-journal-1.4.1, libsystemd-journal-1.4.0, libsystemd-journal-1.3.4,
libsystemd-journal-1.3.3, libsystemd-journal-1.3.1, libsystemd-journal-1.3.0,
libsystemd-journal-1.2.0, libsystemd-journal-1.1.0, libsystemd-journal-1.0.0
(has the same characteristics that caused the previous version to fail:
excludes 'base' version <IP_ADDRESS>)
[__3] fail (backjumping, conflict set: base, libsystemd-journal,
lobemo-scribe-systemd)
After searching the rest of the dependency tree exhaustively, these were the
goals I've had most trouble fulfilling: base, libsystemd-journal,
lobemo-scribe-systemd, Win32-network
Try running with --minimize-conflict-set to improve the error message.

I'm not sure how to resolve these messages as I am not very fluent with haskell/haskell tools. @kwxm or @jmchapman could you help me?

Are you running inside a nix-shell?

ok good, maybe you need to run cabal update before doing any building then.

I re-lauched the nix-shell and it's taking a while to initialize. I think my issue is similar to this thread: https://forum.cardano.org/t/win32-network-preventing-cabal-build-of-caradano-node/36936
Once I'm able to get into the nix-shell up and running, I'll try building again and following the instructions listed in this link. I'll let you know if I get stuck... Thanks!

@SchmErik the Plutus contract when built using, cabal build produces a CBOR of the compiled Plutus contract bytes. Those bytes are actually 2 times CBOR encoded. But when it is used in a transaction, it is decoded 1 time only. So the bytes you see on Cardanoscan, is actually CBOR encoded compiled bytes, but if you need the exact version as cabal build, you will need to byte encode it one time.
Lemme know if that made any sense, or else I will try to paste some examples here.

@ashisherc thanks for your reply. Could you post step by step examples? I'm not 100% clear on what commands I would write to get the results that you're saying. I think it would be great to document this process somewhere on cardanoscan. At this time, it's really hard for someone new to understand how to make sense of the content on the cardanoscan so you might get more questions like this in the future.

Friendly ping - hi @ashisherc! Do you have any updates on this?

Hey @SchmErik, It is not something specific to Cardanoscan, we use the Plutus bytes as they appear in the witness section of the tx. I was detailing the spec how Plutus script bytes are encoded when produced by the cabal, below are more details,
consider the bytes that appear in the witness set (and hence Cardanoscan) for a Plutus script - 43102345
now if you want to get the bytes that are produced by the cabal command, you need to byte encode them once. you can use cbor.me site or any cbor lib for this, after encoding it should look like below,
4443102345 - as produced by cabal

taking this conversation to a different channel. closing


Fix Typos in README.md file of section 8.1

In Lines 26 and 34, I fixed word (Gtihub -> Github)

Not changed yet.

they are corrected

https://github.com/microsoft/Web-Dev-For-Beginners/blob/main/8-code-editor/1-using-a-code-editor/README.md
check here.


On hover to Add icon for "Add dialogue" there should be title

On hover to Add icon for "Add dialogue" there should be title, to indicate for what this add icon for !

Tooltip would be very helpful for user.
Size of add icon looks big

@Mgranfie @mindreeper2420 Do we have some design for this or a normal tooltip should work here

@SMahil @Mgranfie I believe it would just be a tooltip. Think of the FAB in Material Design.

@naina-verma can you verify this fix?

@nimishamukherjee , @SMahil Works fine now !


Set stopRenew to nil instead of trying to close it

Since we're already going to reset it in this same function

I'm pretty hesitant to make any changes here unless we are 100% confident it fixes the issue.

I'll try reproduce it


Feature: Reposition on window resize (without .reload())

Hi.
I am pretty sure that you need to add "reposition" event.
Explaining why:

At my webapp, by selecting slider item its load content to another  window, which has an ifarme inside (youtube video).
1st i tried to use Slider.reload() on window.resize() event
But i met a problem after i opened my video at full screen. It called window.resize() event. And slider did reload, and my ifame with my video just gone.

So i found solution by myself, and hope you add this event, because i like your lib!
let width = 0;    this.Slider.find("li").each(function(){      width+= $(this).outerWidth();                });                 this.Slider.css("transform", translate3d(($(window).width() - width - this.Slider.find(".itemslide-active").outerWidth())/2 + "px, 0px, 0px)");`

Same here


Show edited/moved marker on messages

When a message has been edited or moved, Zulip web shows this with a small "EDITED" or "MOVED" marker. This can be important for understanding a conversation; we should do either the same thing or another way of conveying the same information.
Out of scope for this issue is to show the details of the edits or moves. That can be important information too, but for a lot of purposes just the fact that the message was edited or moved, or the ability to confirm that it wasn't, is very helpful. (Plus, the latter is a feature zulip-mobile lacks: zulip/zulip-mobile#4134 .)

The main idea was to use the left gutter to put a small icon of edited or moved + allow to swipe/drag the message horizontally to reveal full label:

This design isn't final, but let me know what do you think about interaction. Would it be hard to do or not?

Interesting, thanks.
I think that gesture should be doable from the implementation side. There may not be anything drop-in we can use for the whole swipe interaction; but we can give each message a GestureDetector that responds to onHorizontalDragStart and its update/end/etc. friends, and build the interaction out of those pieces.
(There is a drop-in implementation for "drag". But that's for a gesture that starts by long-pressing a thing to pick it up; I don't think it's designed for this use case.)

Hi, I've been working on this issue and I've partially implemented the Edit marker, using Greg's suggestion (GestureDetector responding to onHorizontalDragStart).
I'd like to work on the UI and complete the implementation, it would be great if you could assign the issue to me.

This is how it looks so far.

For ease of reference: here's the spot in @terpimost's Figma design that I think corresponds to the screenshot he posted above:
https://www.figma.com/file/1JTNtYo9memgW7vV6d0ygq/Zulip-Mobile?node-id=538-21662
(That screen for "edited", and the next one to the right for "moved".)

I've edited the description to be more specific that as part of this issue, we'll be storing only the information that the message was moved or edited, not all the details of the edit history.
There's a previous attempted PR for this at #543. For whoever picks this issue up next, feel free to consult that PR, but don't feel obligated to borrow code from it — it's fine to start writing your changes from scratch.

Chat thread about the design for the markers:
https://chat.zulip.org/#narrow/stream/48-mobile/topic/check-x.20icons.20in.20left.20margin/near/1908288

This was resolved with #900 (a few weeks ago).


If no formatter is registered that handles the message event, UX can be confusing

Just had a weird experience where passing --only-failures was causing RSpec to exit with no message whatsoever.  I tracked it down to the fact that the fivemat formatter (which I was using) wasn't handling the message event.  RSpec was trying to notify that --only-failures wasn't configured properly yet:
https://github.com/rspec/rspec-core/blob/5375dcdfdb5460a51d5003de76eb124997fa26ea/lib/rspec/core/world.rb#L170-L174
...which notifies via message:
https://github.com/rspec/rspec-core/blob/5375dcdfdb5460a51d5003de76eb124997fa26ea/lib/rspec/core/reporter.rb#L181-L185
...but since the formatter didn't listen to that message it silently exited.
This was bad UX.
I'm not sure what the best solution is here.  I have a PR out to fix the fivemat formatter (tpope/fivemat#24) but there may be other formatters that don't support message properly.  Maybe we should treat message as special and if no formatter handles that message fall back to $stdout.puts so that no message ever drops on the floor?

Maybe like we do for the deprecation formatter?

Remind me...what do we do for the deprecation formatter?  I don't remember.

Ah I'm actually thinking of the ProfileFormatter, which is inserted when profiling is enabled but only if there isn't a formatter that already implements dump_profile....

Sounds good to me.


Feature/Implement notification in user profile cabinet

It this user story you have to make possible to get notifications in Viber or (and) Telegram ( to choose).You have to put tick and then be redirected to chat bots which will help you

Retested ✅
Jira Test case WR50QC-580


the safety problem that two cleos connect one nodes

I have one nodes and one cleos on the same machine, and I have another cleos on the other machine.
I start the nodes and set http-server-address '<IP_ADDRESS>:8888' to let another cleos on the other machine can connect the nodes.I use the first cleos to unlock the wallet on the first machine. After that, I use the second cleos to connect the nodes, and I find the wallet is unlocked, and I can use the second cleos to see the private and public keys of the accounts that have been imported into the wallet on the first machine.
I wonder if it is necessary that the second cleos unlock the wallet on the first machine again.

All of the wallet handling code in the repository exists solely for testing purposes and proofs of concept.  It is not intended for use as production code.
In particular, using the wallet plugin in nodeos is not a suggested production configuration, and should not be used with private keys that need to remain private.
It is expected that community-created wallets, especially cross platform wallets, will provide production-ready EOS support, since that is their specialty.

Got it，Thank you！


Customize port for web IDE

Currently right now the port is hardcoded for 3000 allow for this to be customized with an environment.

Pretty serious limitation since NodeJS projects render incompatible with Cloud9 option right now.

vhost-proxy does not currently support more than once Host => service:port mapping.
So, yes it's either IDE or Nodejs apps, but not both at the same time inside cli.
While using a different port is possible, it will either have to be a random one or a hardcoded one, but then the user is responsible for port conflict resolution. Neither of these are ideal and I'd rather have this resolved as an enhancement to vhost-proxy routing capabilities.

I'm going to close #67, since telling C9 which port to bind to won't be enough anyway. The port also needs to be exposed by the container. That only be done in either Dockerfile (statically) or via docker-compose (at runtime).
All we really need to do here is have C9 bind to a different port (other than 3000). The port can be then either:

published on a random host port - this can be done today, but requires manual steps to find out what the dynamic port number is
routed by vhost-proxy (not possible yet)

For now, we can just have a documented workaround (and/or a blog post) for option 1.

Cloud9 has been replaced by VS Code Server. The issue is still relevant though.


Usernames are not changed on join.

There does not seem to be any errors that occur, and it just seems to fail silently when trying to change names.
Minecraft server version: 1.8.3
Server version: git-Spigot-1d14d5f-ba32592
API version implemented: 1.8.3-R0.1-SNAPSHOT

Can you post any errors related to NameLayer even on startup.  There was
the one correct?
On May 1, 2015 5:51 PM, "justcool393"<EMAIL_ADDRESS>wrote:

There does not seem to be any errors that occur, and it just seems to fail
silently when trying to change names.
Minecraft server version: 1.8.3
Server version: git-Spigot-1d14d5f-ba32592
API version implemented: 1.8.3-R0.1-SNAPSHOT
—
Reply to this email directly or view it on GitHub
https://github.com/Civcraft/NameLayer/issues/97.

After removing the leftover tables, there were no errors.
Log on restart with database creation
At this point, I shut down the server and changed my name in the Name_player database and verified it was changed.
I restarted the server.
Log after restart

@justcool393 Thx for bringing this to my attention.  If you ever need help feel free to pm but if it's a plugin issue its better to post on github.
Fixed: https://github.com/Civcraft/NameLayer/commit/a0960e0dd50a532d7981e426f7073d9ea998c7ab
Jar: Uh server is having issues will post jar alter.

Jeinkins is up, but the build is failing.
On Fri, May 1, 2015 at 11:18 PM rourke750<EMAIL_ADDRESS>wrote:

Closed #97 https://github.com/Civcraft/NameLayer/issues/97.
—
Reply to this email directly or view it on GitHub
https://github.com/Civcraft/NameLayer/issues/97#event-295373281.

http://<IP_ADDRESS>:8080/job/NameLayer-master/127/


Patch from #380 causes t/lru-maintainer.t to fail in Docker for Mac

While building memcached from source, t/lru-maintainer.t is failing due to the patch introduced in #380.

Memcached version: 1.5.9 (downloaded from http://www.memcached.org/files/memcached-1.5.9.tar.gz)
Build environment: Ubuntu Xenial 16.04 docker image (Linux fd785cafeb77 4.9.93-linuxkit-aufs)
Docker version: Docker for Mac 18.06.0-ce (API version 1.38)
Mac OS version: macOS High Sierra 10.13.6

To reproduce:
root@2cde346f138a:/build/memcached_1.5.9# ./configure
<...snip...>

root@2cde346f138a:/build/memcached_1.5.9# make
<...snip...>

root@2cde346f138a:/build/memcached_1.5.9# make test
<...snip...>
t/lru-maintainer.t .......... 115/226
#   Failed test 'our canary moved to warm'
#   at t/lru-maintainer.t line 80.
#          got: '0'
#     expected: anything else
t/lru-maintainer.t .......... 120/226 # Looks like you failed 1 test of 226.
t/lru-maintainer.t .......... Dubious, test returned 1 (wstat 256, 0x100)
Failed 1/226 subtests
<...snip...>

root@7729f355aca3:/build/memcached_1.5.9# ./sizes
Slab Stats  64
Thread stats    -6480
Global stats    168
Settings    248
Item (no cas)   48
Item (cas)  56
Libevent thread 192
Connection  520
----------------------------------------
libevent thread cumulative  6512
Thread stats cumulative     6320

1.5.8 does not suffer this issue:
root@2cde346f138a:/build/memcached_1.5.9# prove t/lru-maintainer.t
t/lru-maintainer.t .. 99/226
#   Failed test 'our canary moved to warm'
#   at t/lru-maintainer.t line 80.
#          got: '0'
#     expected: anything else
t/lru-maintainer.t .. 120/226 # Looks like you failed 1 test of 226.
t/lru-maintainer.t .. Dubious, test returned 1 (wstat 256, 0x100)
Failed 1/226 subtests

Test Summary Report
-------------------
t/lru-maintainer.t (Wstat: 256 Tests: 226 Failed: 1)
  Failed test:  118
  Non-zero exit status: 1
Files=1, Tests=226, 10 wallclock secs ( 0.06 usr  0.01 sys +  0.10 cusr  0.05 csys =  0.22 CPU)
Result: FAIL

root@2cde346f138a:/build/memcached_1.5.9# cd /build/memcached_1.5.8
root@2cde346f138a:/build/memcached_1.5.8# prove t/lru-maintainer.t
t/lru-maintainer.t .. ok
All tests successful.
Files=1, Tests=226,  9 wallclock secs ( 0.06 usr  0.01 sys +  0.08 cusr  0.08 csys =  0.23 CPU)
Result: PASS

I can also make 1.5.9 succeed by applying this patch (just a reversal of #380):
--- a/t/lru-maintainer.t
+++ b/t/lru-maintainer.t
@@ -56,18 +56,6 @@
         # Items need two fetches to become active
         mem_get_is($sock, "canary", $value);
         mem_get_is($sock, "canary", $value);
-        $stats = mem_stats($sock);
-        # The maintainer thread needs to juggle a bit to actually rescue an
-        # item. If it's slow we could evict after resuming setting.
-        sleep 1;
-        for (0..4) {
-            my $s2 = mem_stats($sock);
-            if ($s2->{lru_maintainer_juggles} - $stats->{lru_maintainer_juggles} < 5) {
-                sleep 1;
-                next;
-            }
-            last;
-        }
     }
     print $sock "set key$key 0 0 66560\r\n$value\r\n";
     is(scalar <$sock>, "STORED\r\n", "stored key$key");

I have no idea why sleeping longer there would prevent an item from ending up in WARM LRU... wonder if there's clock weirdness allowing the LRU maintainer to decide the tail of WARM is too old :\
can you try this tiny patch, please: https://github.com/dormando/memcached/tree/lru-maint-test2
thanks for the detailed report!

That patch resolves the issue for me. I'm afraid I don't know Perl, Prove, or Memcached's internals well enough to even guess at what's going on here. The clock seems to be working as expected--that was recently improved in Docker for Mac--but it's worth noting that this is indeed running on a VM.

Something is seriously wrong with thread scheduling/timing under mac :/ I've changed it slightly again to use the total move counter rather than the current item count.
pushed change to 'next', will go out in the next release in a few weeks. thanks again!

Just confirming that patch also resolves the issue for me.
Thanks for the quick turnaround.

can you try this tiny patch, please: https://github.com/dormando/memcached/tree/lru-maint-test2

This patch fixes t/lru-maintainer.t for aarch64, ppc64 and s390x so, @dormando please merge it.

@ggardet it is merged, just not released yet. I'll see if I can cut one soon.

released now in 1.5.11, sorry for the delay


Add the Global part of the Generic Location Client to the SDK

This PR adds the Global part of the Generic Location Client to the SDK.
Supported messages:

Generic Location Global Get
Generic Location Global Set
Generic Location Global Set Unacknowledged
Generic Location Global Status

Oops, wrong branches. Closing this.


Added COMMIT after detect role of pool

We have two problem with system connection:

The age of the system transaction is growing very much

After promote replica to master the result of "SHOW transaction_read_only" command always "on" because the transaction started before the promote. Promote to master does not break transaction/connection.

I added COMMIT to solve them both.

Released as https://pypi.org/project/hasql/0.8.0/


Should overviews tables size count for the user quota?

Currently for raster table we count the base table size (fully) but not its overviews.
For regular tables (and its vector overviews) we count half of its size (to account for the overhead of having the webmercator geometry).
If we apply the same criterion to vector overviews as we do for raster overviews we should not count it's size... or we could decide to count a fraction of its size...

cc @rafatower @javisantana

https://github.com/CartoDB/cartodb-postgresql/blob/0.16.4/scripts-available/CDB_Quota.sql#L42-L48
Note that is_overview doesn't currently include vector overviews, only raster overviews

I'd go for applying the existing raster criterion (simple and consistent).


Color difference between avatars generated on mobile and desktop

We are using @dicebear/core, and @dicebear/collection version ^7.0.1 for both
import { createAvatar } from "@dicebear/core";
import { botttsNeutral } from "@dicebear/collection";
...
const avatar = createAvatar(botttsNeutral, {
seed: walletPubkey?.toString(),
});
return avatar.toString();
...
For the same seed we are seeing different colors when rendered on mobile device and desktop device, both on chrome. (see both attached

)

Presumably this is not as expected?

Also meant to say, thank you, your libraries are great, much appreciated!


Links to Imgur and Deviant images don't | 3.13.0

Renderer
v3
Browser
Chrome
Operating System
Windows
What happened?
Images from Imgur and Deviant art stopped working after the release of v3.13.0.
Console is full of 401 errors.
Failed to load resource: the server responded with a status of 401 ()
Code
No response

Links from OneDrive have fallen too, we have temporarily rolled back the update until we can fix this, thanks for the heads up!

Specifically our scripts delete everything inside the href starting with a =.
This does not come from DOMpurify, as @calculuschild has commented out that code.

Fixed by #3552


Clarify TypeScript and Preact usage in Vite

Is your feature request related to a problem? Please describe.
Hi there, first of all: Awesome project!
I'm however having an issue when trying to use TypeScript and Preact in Vite, type checking for intrinsic elements doesn't work. I get no IDE suggestions for Preact modules, either.
The solution proposed in #129 isn't enough for me, since it greatly downgrades my DX, with almost no IDE suggestions at all (the primary reason I use TypeScript in the first place).
Describe the solution you'd like
I'd like to see some clarification in the docs on this, the solutions proposed in the issues opened about it (#129 and #246) doesn't resolve the main issue.
Describe alternatives you've considered
Importing h from Preact solves the main issue, but conflicts with Vite's handy auto-injection of this pragma, and thus doesn't work.
My current temporary solution is to install @types/react, and manually changing the import location when auto-importing modules such as useEffect (react => preact/hooks).
This isn't great DX, though 🤔
Many thanks!

I guess we should probably disable the auto h injection...

Oh, actually, here's what you can do - instead of using the jsx: 'preact' preset, use explicit config:
// vite.config.js
module.exports = {
  jsx: {
    factory: 'h',
    fragment: 'Fragment'
  }
}

This disables the auto h injection and should allow you to leverage tsx inference.

Thanks for the clarification!


BLUETOOTH_SCAN doesn't show confirm dialog to the user

Hi, I'm trying to get ACCESS_COARSE_LOCATION and BLUETOOTH_SCAN permissions, but only ACCESS_COARSE_LOCATION shows a dialog to the user.
It seems the plugin doesn't recognize BLUETOOTH_SCAN (I have the entry in "permissions.js" and in "index.js" in @awesome-cordova-android-plugins wrapper).
V/Capacitor/Plugin: To native (Cordova plugin): callbackId: Permissions48284493, service: Permissions, action: requestPermissions, actionArgs: [null,"android.permission.ACCESS_COARSE_LOCATION"]
I'm using Android 12 and the last version of this plugin.

I had the same issue and using latest commit (as of today) on master d35bb49a7d498b3f67789cb98191315f69a434f6 fixed the issue for me.
Some permissions were null since they were not defined.

Thank you, now it works!

Thank you, now it works!

Some permissions were null since they were not defined.

Hi, you know where are defined? Because now BLUETOOTH_CONNECT returns me null but there is the string in permissions.js.

https://github.com/NeoLSN/cordova-plugin-android-permissions/commit/cc9690d2e315f984e72aeaaf52e56ae82e8bb666
Read the commit note.

It seems, in my case, that the "build" command doesn't write the permissions string in the vendor.js file


Hardcoded Topic Name

https://github.com/ahmetsduru/quadcopter_simulator/blob/b99e3547c4e7605bed792276c67fa716b4358350/src/trajectory_generator.cpp#L13
Topic name should better be passes as an argument (or at least a suffix) so that multiple instances can run at the same time.

ok


Remove spurious 'dry run' in wp.ml

This should make the loop counter for unfolding take the correct values.\
I suggest @fortunac as a reviewer, since only she and I might remember why that code was there in the first place. Suspiciously, all the tests still pass...

We originally had that code to add all the z3 variables to the environment so a user can create a custom postconditions. Later on, we added the init_vars to the analysis and that function also adds the variables to the environment (along with their init counterparts), so it should be safe to delete the initial dry run.

I think we can delete the Env.clear_consts api because its whole purpose was to delete the constants generated during the dry run. It isn't used anywhere else. I don't think we'll need it anymore. What do you think?

I agree. We should remove clear_consts, though I can imagine situations where it might not be crazy to have, so maybe keep it around until we get to refactoring Env.t.
As far as I'm concerned, we don't need to deep dive on this any more, and can just merge.


🪐 JupyterLab - nbstripout

As part of the JupyterLab User Research a user fed back that they wanted the following installed:

nbstripout

Definition of Done
The purpose of this ticket is to install nbstripout in the APCBDE image, since this is a specific ask from UR.

Of note: https://github.com/ministryofjustice/analytics-platform-helm-charts/blob/107f924093b63d3346ede4edb9df3efc505a45c5/charts/provision-user/files/pre-commit#L25

I seem to be able to install this by running conda install -c conda-forge nbstripout. Is this acceptable?

Merged the above PR. Need to make a new release to APCBDE + Jupyter so this can be consumed by users.

Captured in the latest release candidate - 1.7.0-rc1. Will release Jupyterlab image when other work completed so won't release just now.


fix: Point vue-tsc to patch version

To prevent future compatibility issues, vite-plugin-checker should point to patch versions of vue-tsc as you're directly using core APIs that can change between minor and major versions.
Closes https://github.com/vuejs/language-tools/issues/4755

bump into this issue as well!

Ping @fi3ework

@davidmatter  Sorry for the late response. It seems https://github.com/fi3ework/vite-plugin-checker/pull/398 has resolved the issue and also sync with vue-tsc as well. Thank you for pointing out the semver range risk!


Weird behavior after .clone(true)

Hi, I'm trying to combine plugin with dynamically added inputs. I'm using .clone(true), because otherwise my focus animation of the input is not working. However this practice seems to break whole behavior of appended input. When I use .clone(false) I can set inputmask again and it's working, but I need to .clone with true because of the reason above. Is here such an option to reset inputmask after cloning with true? Thanks a lot

@kubkox3,
I will see what I can do.
Can you provide a simple codepen with the example.

@kubkox3 ,
I did some test and in both cases I can reapply the inputmask.  With clone(true) the mask is auto applied.

same problem. When using jq.clone breaks inputmask behavior


Remove console log.

Currently every time I start my app using this module I get the following printed to the console.
(from https://github.com/Financial-Times/polyfill-service/blob/4efb6aaf02ce7a94b87abf716c2d3f50efb2e724/lib/sources.js#L23)
Found 871 polyfills

It would be nice if this was hidden behind NODE_ENV=debug or better yet if you used the debug module. I don't think the log is very helpful anyways so it might be best to remove it.

Fair point.  Currently we are using console for logging throughout the app, where needed.  That is probably the only one that gets executed if you use the polyfill service as a node library.  I have no objection to removing it.

Thanks for the quick response and resolution! 👍


Integrates rate and adds LTLA data

Integrates rate into the map
Adds a new map layer
Incorporates LTLA data into the map chart and the map

 Feature: RATES

 Feature: Add LTLA data


Blog: OSO Data Portal

https://docs.google.com/document/d/1zIbCMudBZfMA8IuK154T96IQjhtsGkPThMqRxG4ZBBw/edit
Draft here

https://github.com/opensource-observer/oso/pull/1820

Feedback from partners
https://github.com/opensource-observer/oso/pull/1828


Update form of a created connector connection doesn't contain Connection Type field.

Description
Experienced this while using the email connector, update form of the created connection doesn't contain the Connection Type field.
Additionally, the update form displays the title Add New Connection.
Steps to Reproduce

Create an email connection with the Connection Type set to SMTP.
Try to update the created connection.
The Connection Type field is no longer available in the update form.

Version
1.1.3
Environment Details (with versions)
No response

Once you create a connection, the connection type cannot be updated. This support will be included in the current effort to revamp the connectors.


Development/cyclicbuffer

Done. Included similar changes to the condition variable.

Integrated proposal and applied it is also to the condition variable.


Couldn't move cache entry into local cache due to AccessDeniedException when many identical input files exist

Current Behavior
In a big Multi-Project Build that has build caching enabled, when re-running certain tasks (i.e. running with --rerun-tasks), the following Exception occurs:
> Failed to store cache entry 81741d9bffc40e4a3d0284190b101737 for task ':project20:collision': Couldn't move cache entry '81741d9bffc40e4a3d0284190b101737' into local cache: java.nio.file.AccessDeniedException: D:\dev\.gradle\caches\build-cache-1\81741d9bffc40e4a3d0284190b101737-9494561490260573834.part -> D:\dev\.gradle\caches\build-cache-1\81741d9bffc40e4a3d0284190b101737
This happens with tasks which reference a subproject's about.html file (marked as @InputFile with PathSensitivity.NONE), which is duplicated across many subprojects. Having many of these tasks, that each have identical input files, seems to create some sort of collision when writing to the local build cache.
I was able to reproduce this issue for Gradle 8.8 to Gradle 8.11.
On Gradle 8.7, this AccessDeniedException doesn't occur and the build cache entry can be stored.
Expected Behavior
The exception doesn't occur and the build cache entry can be stored.
Context (optional)
Our workaround (and probably the right setting for this task) was to annotate the problematic task with @DisableCachingByDefault.
Self-contained Reproducer Project
For a reproducer project, see: https://github.com/lukasgraef/build-cache-collision-reproducer
Run gradlew collision and then gradlew collision --rerun-tasks to reproduce.
Gradle version
8.11
Gradle version that used to work
8.7
Build scan URL (optional)
No response
Your Environment (optional)
Windows 11
Amazon Corretto OpenJDK 21

Sorry, I wasn't able to reproduce your issue on Windows or MacOS.
Can you make sure that there are no external entities (e.g., anti-virus software) in play? Can you check if it's reproducible in a different environment, please (GitHub action could be a good candidate; see an example here).

Hi, I tried to reproduce this issue using the gradle/gradle-issue-reproducer project (see build-cache-collision), but also had no luck.
It seems that you're right regarding the external entities, because I've shared the reproducer with some of my colleagues and they all could reproduce the issue. So it's most likely caused by our setup.
However, there's one thing that still makes me sceptical whether this is entirely a problem of our setup: When switching back to Gradle 8.7, neither me nor my colleagues could reproduce this problem anymore. The problems for us only started with Gradle 8.8.

I think the most relevant change was introduced in this PR:

https://github.com/gradle/gradle/pull/28535

The solution would be to update the configuration of the security software.
Given the above, I'm closing this issue.
I understand that this might be frustrating for some users to have broken builds because of AV software, but I don't think there's something we can do on the Gradle side if something prevents Gradle from moving/creating files. Caching is an internal detail and may change. FTR, we had similar issues related to security software in the past.
Related:

https://github.com/gradle/gradle/issues/28948


Added docker, also added linting rules.

Passed QA checks. Also adds a base eslint setup which needs to be evaluated.
D:\OHD\discord-cbl>npm run lint

><EMAIL_ADDRESS>lint
> eslint --fix . && prettier --write "./**/*.js"

D:\OHD\discord-cbl\index.js
    1:1   error  'require' is not defined  no-undef
    2:90  error  'require' is not defined  no-undef
    3:32  error  'require' is not defined  no-undef
    4:17  error  'require' is not defined  no-undef
    6:23  error  'process' is not defined  no-undef
  243:1   error  'process' is not defined  no-undef

D:\OHD\discord-cbl\registerCommands.js
  1:1   error  'require' is not defined  no-undef
  2:18  error  'require' is not defined  no-undef
  3:20  error  'require' is not defined  no-undef
  4:42  error  'require' is not defined  no-undef
  6:23  error  'process' is not defined  no-undef

✖ 11 problems (11 errors, 0 warnings)

D:\OHD\discord-cbl>

Last commit solves the earlier errors from eslint, as Node.js globals were not included @werewolfboy13
This solves #7 and #3 if tested & working when Docker image is run.


Remove moot version property from bower.json

Per bower/bower.json-spec@a325da3
Also their maintainer says they probably won't ever use it: http://stackoverflow.com/questions/24844901/bowers-bower-json-file-version-property

fixed in v3

Thanks!


Replace unsafe.Slice with memory copying to avoid potential fault memory issue

Refactored ListIPForwardRows to deep copy IP forwarding table rows.
Removed unsafe.Slice and replaced with manual pointer dereferencing and copying.

This change addresses a potential fault memory issue when iterating through the IP forwarding table,
caused by the use of slices after corresponding memory has been freed, leading to access failure.

/test-windows-all

/test-windows-all

/test-windows-containerd-e2e

Please break down the PR into multiple ones as it is doing essentially 3 unrelated changes. You can then backport specifically what's needed using the normal backporting process, instead of opening an independent / "duplicate" PR (#6665).

@antoninbas Can I merge the agent crash fix and windows CI fix commits into one PR? Otherwise, the Windows CI pipeline will still fail due to rate limit issue.

Please break down the PR into multiple ones as it is doing essentially 3 unrelated changes. You can then backport specifically what's needed using the normal backporting process, instead of opening an independent / "duplicate" PR (#6665).

@antoninbas Can I merge the agent crash fix and windows CI fix commits into one PR? Otherwise, the Windows CI pipeline will still fail due to rate limit issue.

Yes, that's ok given that SNATFullyRandomPorts was introduced after the last minor release and the change doesn't need to be backported.

/test-windows-all

Hi @antoninbas @tnqn could you help to double check if we can more forward? this issue is a blocker for downstream customers. Thanks.

/test-windows-containerd-e2e

Thanks for all comments @antoninbas @tnqn , I have updated the code based on the current windows api implementation(https://github.com/tailscale/winipcfg-go/blob/84d0a1a3b210638dfe24d6169581a7af315c13f0/wt_mib_ipforward_row2.go#L51C1-L78C2).

Please let me know once the verification is done

/test-windows-all

Thanks for all comments @antoninbas @tnqn , I have updated the code based on the current Windows network management API implementation(https://github.com/tailscale/winipcfg-go/blob/84d0a1a3b210638dfe24d6169581a7af315c13f0/wt_mib_ipforward_row2.go#L51C1-L78C2).

Both are correct, The code in wireguard windows is more concise.

Please let me know once the verification is done

@tnqn Windows CI passed.

/skip-all

/skip-all


Determine environment selection experience

Currently, the AEM assets environment used by the asset picker is determined by a hard-coded configuration value. Will this be sufficient, or would we want to integrate the discovery service into the panel so that users can choose from their provisioned environments?

would we want to integrate the discovery service into the panel

Wouldn't the asset selector MFE already do that? I tried removing the repositoryId configuration but ran into this issue.

Wouldn't the asset selector MFE already do that?

That would be great! Let's see what the result is of your work removing the repositoryId

I can confirm that the AS MFE provides a repository selection experience.

Please feel free to reopen if there's anything else we need to cover under this issue.


Uninitialized string offset :2 while exporting csv

I got this error:
"Uninitialized string offset: 2"
/vendor/phpoffice/phpexcel/Classes/PHPExcel/Calculation.php
on line 2772
while exporting a csv file.
Note: I have another method using Mattwebsite library that works perfectly while exporting a csv file.
Any help will be appreciate.
Thanks in advance.

I can't make a wild guess at what is going wrong without seeing your code ;)

Here my code,
Excel::create('filename', function($excel) {
    $excel->sheet('filename', function($sheet) {
                                                     //for header in csv
                                                     $sheet->row(1,array('ID','Name','Address'));
                                                     //doing query to db then fetch
                                                     $row = with(new UserModel)->getSomething();
                                                     $j = 2;
                                                     foreach($row as $r){
                                                                              $sheet->row($j,array($r->id,$r->name,$r->address));
                                                                              $j++;
                                                     }
                                    }
})->export('csv');
Note: I have test with other data and it works fine. I wonder which data cannot be process.
@patrickbrouwers Thank you for your fast response.

Do you have some data which starts with = maybe?

@patrickbrouwers I already checked that some data starts with = now I trying to escape this = with unicode. Thanks for your answer and fast response :)

Hello everyone.
I have same trouble,  I do not have  any idea how to represent symbol =  that at the beginning of any data  as simple string but not as a start of formula.
Could You be so kind and give me an advice how to resolve that problem ?
Thanks in advance.

Hi @niknickolas,
Hope this could solve your problem:
Excel::create('filename', function($excel) {
$excel->sheet('filename', function($sheet) {
//for header in csv
$sheet->row(1,array('ID','Name','Address'));
//doing query to db then fetch
$row = with(new UserModel)->getSomething();
$j = 2;
foreach($row as $r){
     /***Here what i did to solve that problem***/
     $r->name = str_replace('=','\=',$r->name);

     $sheet->row($j,array($r->id,$r->name,$r->address));
     $j++;
   }
 }

})->export('csv');
Cheers.

Hi @niknickolas ,
Hope this could solve your problem:
Excel::create('filename', function($excel) {
$excel->sheet('filename', function($sheet) {
//for header in csv
$sheet->row(1,array('ID','Name','Address'));
//doing query to db then fetch
$row = with(new UserModel)->getSomething();
$j = 2;
foreach($row as $r){
     /* Here what i did to solve that problem */
     $r->name = str_replace('=','\=',$r->name);

     $sheet->row($j,array($r->id,$r->name,$r->address));
     $j++;
   }
 }

})->export('csv');
Cheers.

Hello @MuditaWijaya.
Thanks for your help.
But main idea is to save  strings which start with = sign as plain strings without trying to execute operations over them as if they were formula.
In your example you will get string which starts with backslashes.
I found that, it is not problem of this library, it is problem of Excel itself, there is also no way to write plain string with = sign at the beginning of  without using it as a formula. I think so.

We are closing all old tickets, because version 2.* is reaching the End-of-Life stage. Our full attention is now allocated to version 3.0. It's still possible to use 2.*, but there will be no active support anymore.


Support for JS files

I tried to use this plugin in my Hugo project and I found it could not work with js files well.
In Hugo, there is a feature that Hugo can execute js/css files as a template. FYI, https://gohugo.io/hugo-pipes/resource-from-template/.
But I found that if I used this feature and tried to format my project then it would break. It seems that this plugin did not have support for this, so I was wondering if this would be include in future?
Thank you for making this wonderful plugin! It is very helpful.

I believe this project is mainly just supporting go HTML templates rather than JS or XML or CSS templates; I agree that the templating support in Hugo is really useful - I've used a custom output type to generate my _headers file w/ dynamic hash values for CSP purposes so I can use a strict-dynamic policy

Related to #33 — but in a separate file.


Download component

On the creaorkest.org website there is a way to download pdf's etc (for 'notulen' or 'statuten').
I think it would be nice to have a download component.

Needs to be added to the CMS
Should render a link to the download
Maybe show some metadata like size/extension of the download

#306 fixed


Problem: transactions GQL untested on large dataset

Recommend you use CI machine with large dataset to test. (Robin to configure appropriately.)


Support markdown makeup in claim description

Allow user to put rich content in claim's description by using Markdown language.
Without markdown support:

With markdown

@longle255 I think adding markdown support is a great idea! However, I think if we're going to do it we should flesh it out a bit more:

Switch the publish description editor to something like https://simplemde.com/
Either disallow h1, h2 (and maybe h3?) or style them to be smaller
Handle case of invalid or poorly formed markdown when rendering (someone can theoretically put anything in the description metadata field - will ReactMarkdown handle all of this?)

Feel free to discuss with me on Slack as well, this is definitely a valuable addition!

sure, that makes sense. I was going to update the description editor too. I'll see if I can address all suggestions

added:

editor for claim's description in publish page
limit markdown type: remove heading, html block

Another consideration: this opens up the possibility of someone embedding javascript in the description, which is a serious security hole. Please make sure to handle this. We probably don't want CSS either.

yes that was considered too, all HTML block which could possibly include JS and CSS will not be rendered

For example if I put a markdown like this
Normal markdown
*italic*
**bold**
<b> This should not be bold </b> <script> alert("security break");</script>
another text

those HTML tag will be escape as screenshot

@kauffj ready for review 😁

There's also some discussion among LBRY devs that this will require an additional metadata field.

This is merged into publishing branch, which will eventually be either 0.12.1 or 0.13. Either way, this is merged and considered complete, but is not going into master.


changed background color of  button and added plus icon before it

Targets #{ISSUE_ID}
2314
Description
I changed background color of  button and added plus icon before it
Checklist:

[x] I have performed a self-review of my own code.

@Sarvesh-Ghildiyal Please enter the issue link in your PR. And also resolve the merge conflict.

@Sarvesh-Ghildiyal Can you resolve the merge conflicts?


Question: Is it possible to lint nuxt.config.js and .eslintrc.js on hot reload?

The hot-reload lint works fine for component files.
But I can't get it to automatically lint nuxt.config.js and .eslintrc.js file. Is this possible?

Hi @albertpratomo at the moment it is not possible, you will have to run it manually.
This module uses the eslint-loader.
Probably in its next major version it will be modified to use the eslint-webpack-plugin that will give you this possibility.