Enhancement/checkmate apps

I couldn't get the Frontend to properly work and I've added a description here;
    const showCreateAppModal = async () => {

        // The goal here is to check if the flag is demo, if it is not then proceed to open the modal
        // if it is then send a request to the list variant enpoint and count the number of apps returned
        // if the number of apps is 1, show the message informing the user that they can create more than 1 app.

        // const response:GenericObject = countApps()
        // console.log("Response =====>", response)

        // const isDemo = process.env.NEXT_PUBLIC_FF

        // if (isDemo === "demo" && response.length === 1) {
        //     notification.warning({
        //         message: "Template Selection",
        //         description:
        //             "Sorry, you can only create one App at this time.",
        //         duration: 3,
        //     });
        // } else {
        //     setIsCreateAppModalOpen(true);
        // }

        setIsCreateAppModalOpen(true);
    };

cc: @mmabrouk


Spike: Identify what's needed for Railgun to reach KIC feature parity

Spike for KIC 2.0 GA bringing railgun to feature parity with the existing 1.x releases of KIC.
To resolve this issue we should spin off several new issues which represent the work that needs to be done to reach parity and associate them with the KIC 2.0 milestone.
KEP5 provides much of the contextual starting points for this spike.

Followup: our generators for examples, crds, e.t.c. are not 100% yet and we need to include this in our considerations.

@Kong/team-k8s I have added several issues to the KIC 2.0 Milestone as a result of this spike. These are prioritized and ordered in the order it's expected they should be approached.
Please review and add any new issues or updates you feel are needed to complete the scope of this project.


Search: ability to pass Image props in SearchResult

Feature Request
Problem description
I wanted to use circular images in <Search> results. However, the image prop only accepts a string according to the documentation, not a props object.
I tried passing an object anyway { circular : true, src : 'https://...' } and it renders the image successfully. However, the image isn't circular, despite the fact that the circular class is correctly applied. The border-radius seems to be overridden by a selector with higher precedence. I then tried using a custom render function and had the same result.
Since the documentation doesn't indicate that props objects are supported here, maybe this is expected? But it's kind of surprising nonetheless.
Proposed solution
Officially support props object for image and fix any relevant CSS precedence issues.
MVP
https://codesandbox.io/s/semantic-ui-react-xce2z

We should refactor SearchResult component to use shorthands, it will resolve such issues.

Hi, stale bot! :)


Much smoother scrolling in panels

Hey. First of all, thank you so much for creating this plugin. It's fantastic. However, I was having some issues with scrolling within the slide panel. It felt like the menu was getting stuck when scrolling. The "stickiness" was causing me to accidentally click on the links in the sidebar.
However, I was able to get the scrolling smoothed out by changing:
 .sidr {
    display: none;
    position: absolute;
    position: fixed;
    top: 0;
    height: 100%;
    z-index: 999999;
    width: 200px;
    overflow-x: none;
    overflow-y: auto;
    font-family: "lucida grande",tahoma,verdana,arial,sans-serif;
    font-size: 15px;
    background: #333;
    color: #fff;
    -webkit-box-shadow: inset 0 0 5px 5px #222;
    -moz-box-shadow: inset 0 0 5px 5px #222;
    box-shadow: inset 0 0 5px 5px #222;
}

to:
 .sidr {
    display: none;
    position: absolute;
    position: fixed;
    top: 0;
    height: 100%;
    z-index: 999999;
    width: 200px;
    overflow-x: none;
    overflow-y: auto;
    font-family: "lucida grande",tahoma,verdana,arial,sans-serif;
    font-size: 15px;
    background: #333;
    color: #fff;
    -webkit-box-shadow: inset 0 0 5px 5px #222;
    -moz-box-shadow: inset 0 0 5px 5px #222;
    box-shadow: inset 0 0 5px 5px #222;
    -webkit-overflow-scrolling: touch;
}

and then adding:
.sidr > * {-webkit-transform: translateZ(0px);}

right below .sidr
This helps out in iOS 5 and above. Not too sure about Android. Trying to find a testing device to confirm.

We will implement better animations when implmenting CSS3 animations, but we will not use non-standard attributes.
https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-overflow-scrolling
https://github.com/artberri/sidr/pull/30


feat: impl parallel get_byte_ranges for ObjectStoreReader

Which issue does this PR close?
Closes #
Rationale for this change

What changes are included in this PR?

Are there any user-facing changes?

How does this change test

This seems duplicate with #450


Upgrade dep moduels to 0.24.0

Changes

upgrade core modules to 0.24.0
fix bug in codegen script: run codegen right after deleting the stale generated files, otherwise dep update will fail due to required pkg is deleted
update clientset in frameworkcontroller repo to use new interfaces
update docker file

Tests
$ ./hack/update-all.sh
$ ./build/frameworkcontroller/go-build.sh
$ ./build/frameworkcontroller/docker-build.sh
$ ./build/frameworkbarrier/go-build.sh
$ ./build/frameworkbarrier/docker-build.sh

Close the stale PR


implement Level of Detail

level of detail: A level of detail method for blocky voxels | 0 FPS

This might help too
http://www.sea-of-memes.com/LetsCode11/LetsCode11.html


[Bug]: Unable to connect toi instance

Contact Details
<EMAIL_ADDRESS>What happened?

What version of the tool are you using?
2.0.4
What version of Visual Studio Code are you running?
1.63.2
Relevant log output
attached image for reference

May I get more information as to the steps you choose during the connection that resulted in an error?


Add automatic & manual tracking of JS errors to JavaScript tracker

So that you do something like this:
window.onerror = function(errorMessage, url, line) {
      _snaq.push['trackError', errorMessage, line];
  };

References:

http://blog.protonet.info/post/9620971736/exception-notifier-javascript
http://help.airbrake.io/kb/api-2/notifier-api-version-22

Also add isFatal flag...
Rename message to description, URL to file.
Also: consider adding custom variable and custom JSON support to errors, so more data can be sent...
Adapting from Airbrake, also add:
class - the class name or type of error that occurred.
component - the framework, sub-system, or MVC controller in which the error occurred
action - class method, function, or 'controller action' in MVC parlance
All optional.

Here's the Piwik ticket for comparison: https://github.com/piwik/piwik/issues/4977

Having looked at this, I don't think it makes sense to try to generalize error reporting to a universal format. Different languages have different error handling, exceptions, stack traces etc.

Assigning to @jbeemster

@jbeemster and @alexanderdean is this something that is ready for production? We are looking at building something ourselves for JS errors but it looks like this does exactly what we need.

Hey @Koen87 - this will go into the next release but as far as I know it hasn't been started yet. If you are going to work on it then a PR would be most welcome - it would be good to have a standard implementation with formal schemas that works for all users...


getNamespaces function does not includes localeStructure

I am currently looking into the code because our localeStructure config was not working without ns config and I found that the getNamespaces function inside the createConfig file is not taking the localeStructure option. Maybe we can improve it with something like:
combinedConfig.localeStructure.split("{{ns}}"} to then add it to the localePath
I can create a PR if it seems reasonable

I don't know exactly what you mean... Maybe first create a minimal example that explains exactly what you want?

btw: at least 1 namespace is necessary

What I meant is if the user change the localeStructure config, the function getNamespaces does not work since it assumed the path is going to be: localePath/locale.
Let say you have a folder structure like this:
home
    - en.json
    - fr.json
error
    - en.json
    - fr.json

and a config with localeStructure: "{{ns}}/{{lng}}", the function will not work since localePath/locale does not exist.
Then, theses lines will not work
const namespacesByLocale = locales.map(locale =>
            getLocaleNamespaces(
              path.resolve(process.cwd(), `${localePath}/${locale}`)
            )
          )

feel free to try a PR


Make sure our impersonation works for groups

Just to be totally sure we are passing that right

Writing the OIDC/Dex documentation (#1786), I used Groups for testing (weaveworks, quick-silver) and it worked as expected.
Or is it a different impersonation?

that is what i understood, maybe pesto is referring to a different "groups"?
all looks good from here tho, closing


[Enhancement] : Add a  footer [GSSOC'23]

Description
There is no better footer.
Describe the solution you'd like
A better footer will enhance the overall website user interface.
Design of the footer

Describe alternatives you've considered
While coding the design i think to make it transparent and have a box shadow to look more better

@ayush02av  I was not aware of that issue was already raised regarding this. But still i am seeing that there is no progress of footer added to the website. If no one is working i can do this within 1 day and also design it better than now.

@itsmohit097 Okay it might not be merged with the main branch, but it must be in progress.
Let me check on the status of those issues and get back to you on this later.

@ayush02av  okay let me know whatever the situation is.


Add composer folder recognizer

Composer can be in other folder location, in my OS is in $HOME/.config/composer by default.

@robbyrussell fixed by https://github.com/robbyrussell/oh-my-zsh/commit/4fba92e04fa9b62b2259abc45eb92ca6a74f1639


Update client to Kubernetes 1.17 and codegen fixes

Changes:

update go to 1.13
update Kubernetes packages to v1.17.2
fix codegen script for MacOS
specify the version for each type (the codegen script had v1alpha1 hardcoded for all packages)
add missing metrics clientset to codegen
regenerate all clientsets (the metrics clientset wasn't generated properly, to avoid this in the future I've added clientset validation to CI that will fail the build)
add codegen verify script to CI
add go modules caching to CI
remove install package as it's not compatible with Kubernetes 1.17 nor with go mod (to install the CRDs use kubectl apply -f ./crds)

Signed-off-by: stefanprodan<EMAIL_ADDRESS>

How is this related to 41?
PRs should be verified in CI that the clientset is correctly generated, so I propose to merge this first then rebase 41.


Auto select and remember localization language depending on browsers settings

Currently Spanish seems to be the language selected by default. It would be nice if PhysicalBITS would react to the browsers' language settings.
Also, a cookie could be used to remember last chosen language.

Found the code that sets Spanish per default here web/ide/ide.js#L587
I'll have a look at how to change this some time soonish.

Yes, absolutely. I hardcoded spanish as a temporary solution for my needs at the time but it should use the browser settings.
To preserve the user settings I'm currently using localStorage. Maybe we can add the user language in there as well.

To preserve the user settings I'm currently using localStorage. Maybe we can add the user language in there as well.

Yes, absolutely. And also the all-caps-mode setting could be saved. But how should it be structured? Could I put them to the UI state object like this:
  function getUIState() {
    return {
      settings: {
        interactive: $("#interactive-checkbox").get(0).checked,
        locale: i18n.currentLocale(),                     // <-- this one
        all-caps: $("#all-caps-checkbox").get(0).checked, // <-- and this
      },
      layout: layout.toConfig(),
      blockly: UziBlock.getDataForStorage(),
    };
  }

I created a pull request for a first draft on autodetection functionality in #19.

But how should it be structured? Could I put them to the UI state object like this:

Yes, exactly.


New MongoDB recipe (nri-mongodb3)

Updates the MongoDB recipe to use the new MongoDB integration which supports MongoDB 4.0 or higher.

@amolero-nr can we release the new recipe and replace the existing one?
We've started the GA release and I need to update the OHI docs and quickstart to point to the new recipe.
Thanks in advance.


No default in_resources

@rjpower looks like the issue is fixed so this is a cleaner solution to the mesh issue


Additional Organizational Units ACLs

Description
This pull request adds the display of two additional edges related to Organizational Units ACLs: GenericWrite and Manage Group Policy Links. In addition, a warning regarding the exploitation of OU ACL inheritance in the case of adminCount=1 protected objects was added in the OU GenericAll edge abuse information.
Motivation and Context
The motivation behind the pull request is described in the following article: https://www.synacktiv.com/publications/ounedpy-exploiting-hidden-organizational-units-acl-attack-vectors-in-active-directory
This change aims to add two potentially exploitable OU ACLs to BloodHound. Note that two pull requests were created on the SharpHound collector and on the BloodHound.py collector in order to add the collection of these permissions.
How Has This Been Tested?
Various domain extracts with the modified SharpHound/BloodHound.py collectors were performed and ingested in the modified BloodHound version. New edges are displayed as expected. Abuse information for the new edges is also reported in the expected format.
Screenshots (if appropriate):
https://www.synacktiv.com/sites/default/files/inline-images/bh_patched_managegplink_2.png
https://www.synacktiv.com/sites/default/files/inline-images/bh_patched_genericwrite_2.png
https://www.synacktiv.com/sites/default/files/inline-images/bh_patched_genericall_2.png
Types of changes

[ ] Chore (a change that does not modify the application functionality)
[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[ ] Documentation updates are needed, and have been made accordingly.
[ ] I have added and/or updated tests to cover my changes.
[ ] All new and existing tests passed.
[ ] My changes include a database migration.

About this part, I do not think that documentation updates are necessary, nor the addition of tests, but feel free to correct me if I am wrong !
I am at your disposal for any further information

Hi @q-roland,
Thank you for publishing a great blog post and submitting this awesome pull request!
I have a couple of questions:

The "Manage Group Policy Links" permission creates two ACEs - Write access to the gPLink attribute and the gPOptions. The SharpHoundCommon PR looks for just write access to the gPLink attribute. Based on how I read your blog post, it seems like write access to the gPLink of the targeted OU is enough to pull off the attack. Can you confirm that?
Do you know if it is possible to pull off the attack by creating an SMB share and running an LDAP server on a compromised existing AD computer, so you don't rely on being able to create a new computer account in AD?

Thanks,
Jonas

Hi @JonasBK,
Thanks a lot for your answer, I'm glad the SpecterOps team considers the pull request as pertinent!
Regarding your questions:

Indeed, the "Manage Group Policy Links" permission also creates an ACE for the gPOptions attribute. This attribute takes the form of a bitmask may be used to apply specific configurations when linking a GPO to an OU (disable user configuration, disable machine configuration, loopback processing, override and auditing etc.). The default value for the gPOptions attribute is 0x00000000, meaning that no specific configuration is applied. In most cases, the exploit described in the article will work by only modifying the gPLink attribute, so the answer to your question is "yes, write access to the gPLink of the targeted OU is enough to pull off the attack". In very specific edge cases, an alteration of the gPOptions attribute may be however necessary - typically, if gPOptions is configured so that user configuration is disabled for an OU, and the attacker wishes to target a user object located in this OU (pretty unlikely though). To sum up, the answer to your first question is "Yes, 99% of the time".
Indeed, it is totally possible to implement the attack using an already compromised domain machine to run an LDAP and SMB server. The OUned.py tool proposes an implementation from a non-domain joined machine to minimize attack prerequisites, but using a compromised machine can be also considered.

Do not hesitate if there is any other question,
Quentin

Hi @JonasBK,
Thanks a lot for the PR review and the proposed changes. All of them are really relevant - some even provide additional elements that I did not think about (such as abusing write permissions on gPLink by linking a modified GPO to an OU, which is a good point!).
The next few days may be a bit busy for me. If it is possible to implement the changes on your side, it would be great! (Otherwise no worries, I can take the time to do it in the middle of next week).
Thanks again for your input,
Quentin

Hi @q-roland,
Glad to hear my suggestions make sense to you! If you're willing to implement the changes, we're happy to wait for you to find the time. No stress! :)
Cheers,
Jonas

Hi @JonasBK,
I hope you are doing well. I implemented the requested changes in my latest commit. This includes the renaming of "ManageGPLink" to "WriteGPLink", as well as the improvement of Help Texts related to GPLink exploitation, based on your suggestions.
The necessary changes were also committed to the pull request on the SharpHoundCommon repository. I performed some additional tests to ensure the modifications did not break anything.
Do not hesitate to get back to me if some of the changes are incomplete / if you have other suggestions regarding the pull request :)
Cheers,
Quentin

Hey @q-roland,
Wonderful! I will review it and let you know :)
Thanks for all your great work!
Cheers

Hey @q-roland,
It looks great!
Something I have not thought about before now - have you checked if the attack is possible with write gPLink permission on the domain head object? I guess it should work as well.

Hi Jonas,
This is again an interesting point. I was indeed able to reproduce the attack this afternoon by modifying the gPLink attribute of the domain itself. I actually added a malicious GPO to the gPLink value, and in addition to the legitimate Default Domain Policy, all domain objects are now attempting to apply the malicious GPO hosted on the attacker machine.
The exploitation of the domain ACL would obviously have an important impact and could directly result in full domain takeover. However:

Permissions on the gPLink attribute seems to be appropriately restricted to administrative users. I do not really see a specific case in which this configuration would be changed and result in less-privileged users having write permissions on the domain gPLink, so exploitation scenarios seems rather unlikely (although it is true that we sometimes encounter unexpected and weird permissions in AD environments).
Manipulations related to the default domain policy are always a little touchy - even though in this case I exploited it with OUned.py, and nothing seemed to break.
This attack may be pretty noisy and CPU intensive depending on the network configuration of the target network. Indeed, numerous objects may attempt to fetch their GPO on the attacker's machine. A lot of them may not be successful if they can't reach said attacker machine.

This is still a valid and potentially impactful gPLink abuse scenario. Correct me if I'm wrong, but this is probably not implemented in the current pull request and that may require some additional development, since I suppose that compromise paths related to the domain container are distinct from OU compromise paths

Hey Quentin,
Awesome, thanks for confirming that it works against domains as well.
Those are some good considerations around the attack. I think it makes sense to add the WriteGPLink and GenericWrite edges against domains as the impact is huge if they exist. I will add a note in the abuse info about that the user should be mindful of what and how many users and computers are affected.
It is possible to limit the scope of affected principals on a GPO:

I am not sure how it works under the hood, but it could potentially be a cool feature to add to OUned.py if it is feasible.
I will make the changes to BloodHound and SharpHoundCommon - you have already helped a lot with this :)


[Docerina] - Alignment Issue in Displaying Method Names and Descriptions

Description:
As shown below, there is an issue in the Ballerina API Docs design in displaying method names and descriptions by aligning them properly.
For example, see https://ballerina.io/v1-1/learn/api-docs/ballerina/file/objects/FileInfo.html.

Steps to reproduce:
Affected Versions:
OS, DB, other environment details and versions:
Related Issues (optional):

Suggested Labels (optional):

Suggested Assignees (optional):

Need to verify the fix.

Closing since this has been verified when sending the PR.


Swift Windows | unable to create symbolic link a build\debug: Error

Hi I am new to Swift and I am currently testing it from my Windows computer. Whevener I run a script it gives me this warning:
C:\Library\Developer\Toolchains\unknown-Asserts-development.xctoolchain\usr\bin\swift.exe build --skip-update --product wGarbage --scratch-path C:\Users\natha\CLionProjects\wGarbage\.build
Building for debugging...
Build complete! (0.17s)
warning: unable to create symbolic link at C:\Users\natha\CLionProjects\wGarbage\.build\debug: Error Domain=NSCocoaErrorDomain Code=256 "(null)"

This warning breaks the running from my IDE but I can still run the program through swift command.
PS C:\Users\natha\CLionProjects\wGarbage> swift run

Building for debugging...
[2/2] Emitting module wGarbage
Build complete! (0.37s)
warning: unable to create symbolic link at C:\Users\natha\CLionProjects\wGarbage\.build\debug: Error Domain=NSCocoaErrorDomain Code=256 "(null)"
Hello, world!

Since it is mainly related to Swift itself I thought it would be posted here.

Seems like my problem come from lldb and the Python debugger

I managed to solve this by installing:

Installing Python with Visual Studio
Activating Developer Mode on Windows

This knowledge was helpful! The instruction on the Getting Started page only showed set developer mode from a dialog, rather then going directly from Settings and I just ignored this. Once I searched for the developer settings and turned them on and confirmed that choice, I was good to go.

I think it was fixed due to the developer mode, it would probably be helpful if it used junctions on Windows instead of symlinks.


Consider adding required: False option to .address_fields()

allow_no_address does not cover the situation where user/person has an address, but it is not a required input on the form. Want to be able to turn off the required fields in .address_fields() without having to pull in and write required: False on every field
https://github.com/SuffolkLITLab/docassemble-AssemblyLine/blob/3f89d3265013c12d09d760eb63ec0fbe2d14f3eb/docassemble/AssemblyLine/al_general.py#L75-L83

OK, thinking this through I guess we want to let required be either a bool or a dictionary of required fields.


user.meta is not a function

Tried to deploy primecms using docker
my docker look something like this
FROM <package>/node:12.12 as builder

# Install system dependencies
RUN apk update && apk add git

ARG BUILD_DIR=/root/primecms
ARG INSTALL_DIR=/var/primecms

# Create app directory
RUN mkdir -p ${BUILD_DIR}
RUN mkdir -p ${INSTALL_DIR}
WORKDIR ${BUILD_DIR}

COPY . ${BUILD_DIR}

RUN yarn install --silent
RUN yarn setup
RUN yarn compile

RUN mkdir -p ${INSTALL_DIR}/node_modules/@primecms
WORKDIR ${INSTALL_DIR}/node_modules/@primecms
RUN for dir in "${BUILD_DIR}"/packages/*; do \
        NEW_NAME="$(basename "$dir" | cut -d- -f2-)"; \
        cp -rdf "${dir}" "./${NEW_NAME}"; \
    done

WORKDIR ${INSTALL_DIR}
COPY package.deploy.json ${INSTALL_DIR}/package.json
COPY yarn.lock ${INSTALL_DIR}/yarn.lock
RUN yarn install --production --silent

then i copy over the install dir
but somehow when i run it and try to login
i keep getting the user.meta is not a function error on the getUser
but everything work fine in my local development
any idea what could have caused this?
thank you

Initial install using yarn seems to be broken right now. If you swap yarn install --silent with npm install everything should work. This has for sure something to do with a mad yarn.lock. It does not happen, when using the latest tag v0.4.0-beta.0.


feat(r3-corda-ent): option to use other supported dbs in place of h2 dbs

Description
As a developer I want to enable the feature to choose external dbs for cenm and corda-ent nodes in place of existing filesystem based h2  db.
Acceptance Criteria

Add helm chart for the supported external db
Modify node/cenm configurations to switch to external db when specified
Network deployed successfully

arttin


Do the project consider to support ue5 docker build images and runtime?

As the titile says.

We have UE5 support. Just ue4-docker build 5.0.3-release --target=minimal and you'll get ready to use image.
More than that, Dockerfiles for official Unreal Engine images are generated using ue4-docker:
https://github.com/EpicGames/UnrealEngine/blob/5.0.3-release/Engine/Extras/Containers/Dockerfiles/linux/generate.sh#L49


Metrics optimization

We need to optimize the page speed score:
https://pagespeed.web.dev/analysis/https-main--xwalk-boilerplate--diva-e-aem-aem-live/cga6dwuqal?form_factor=mobile

[ ] add aem.js from here to our project
[ ] rewrite the tasks in the task folder so that are named like the aem.js exported functions
[ ] in the hlx object call the new exported tasks in the right order

Adobe boilerplate:
https://main--aem-boilerplate-xwalk--adobe-rnd.aem.live
diva-e boilerplate:
https-main--xwalk-boilerplate--diva-e-aem-aem-live
diva-e boilerplate (doc based):
https://33-maints-refactor--eds-editorial--ifahrentholz.hlx.live


WIP: add support for cross-compilation

This adds support for cross-compiling using crate2nix to Linux targets. With this PR, passing pkgs = pkgsCross.<platform> to the generated Cargo.nix will cross-compile the crate.
Unfortunately, I haven't figured out a way to do this without potentially breaking existing users, as well as the debugging tools. This is because there is no longer a single version of buildRustCrate used by all crates, and instead there are separate ones for each platform. This makes it difficult to pass around buildRustCrateFunc.
This PR also includes #142 because I needed it to test some of my crates.

cc @Ericson2314

Is anyone going to review this? I'm happy to help weasel around back compat issues if that's what's needed, but I'd like someone to confirm that's indeed problem and to what extent, first.

Is there an example of using this? I tried it out locally and get an error when it tries to link bootstrap.

I have only used this to build some private packages, but I just tried to cross-compile crate2nix using the following command:
nix-build -E 'with import <nixpkgs> {}; import ./. { pkgs = pkgsCross.armv7l-hf-multiplatform; }'

If you remove nix-prefetch-git from the dependencies (due to https://github.com/NixOS/nixpkgs/issues/66741), it mostly works, but fails to build tera for some reason I've yet to look into.
I'm not sure where exactly it is failing for you. Could you post the command you are using as well as the end of the log?

I realized I have a more complicated setup than I thought: I need a particular nightly, so I'm using the moz-overlay, and I'm compiling statically. It turns out the previous errors were caused by my inconsistent passing of cross packages and not using buildPackages where I should, so now I'm now able to link dynamically, but not statically. The issue seems to be the build script not linking:
error: linking with `cc` failed: exit code: 1
  |
  = note: "cc" "-Wl,--as-needed" "-Wl,-z,noexecstack" "-m64" "-Wl,--eh-frame-hdr" "-L" "/nix/store/qdcv8z57rcfwnxnpfsczmcxp6jblaf8m-rust-1.49.0-nightly-2020-10-10-b1af43bc6/lib/rustlib/x86_64-unknown-linux-gnu/lib" "target/build/nix/build_script_build.build_script_build.7rcbfp3g-cgu.0.rcgu.o" "target/build/nix/build_script_build.build_script_build.7rcbfp3g-cgu.1.rcgu.o" "target/build/nix/build_script_build.build_script_build.7rcbfp3g-cgu.2.rcgu.o" "target/build/nix/build_script_build.build_script_build.7rcbfp3g-cgu.3.rcgu.o" "target/build/nix/build_script_build.build_script_build.7rcbfp3g-cgu.4.rcgu.o" "target/build/nix/build_script_build.build_script_build.7rcbfp3g-cgu.5.rcgu.o" "target/build/nix/build_script_build.build_script_build.7rcbfp3g-cgu.6.rcgu.o" "-o" "target/build/nix/build_script_build" "target/build/nix/build_script_build.1enide7h7a8vrbgy.rcgu.o" "-Wl,--gc-sections" "-static" "-no-pie" "-Wl,-zrelro" "-Wl,-znow" "-nodefaultlibs" "-L" "target/buildDeps" "-L" "/nix/store/qdcv8z57rcfwnxnpfsczmcxp6jblaf8m-rust-1.49.0-nightly-2020-10-10-b1af43bc6/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-Wl,--start-group" "-Wl,-Bstatic" "/nix/store/3f6c9z0y2v0h35w7skd3pipqvh88h14r-rust/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd-6e0e72ef3f331f94.rlib" "/nix/store/3f6c9z0y2v0h35w7skd3pipqvh88h14r-rust/lib/rustlib/x86_64-unknown-linux-gnu/lib/libpanic_unwind-eed7c8ea6eea20e8.rlib" "/nix/store/3f6c9z0y2v0h35w7skd3pipqvh88h14r-rust/lib/rustlib/x86_64-unknown-linux-gnu/lib/libminiz_oxide-637cb1b53c807e95.rlib" "/nix/store/3f6c9z0y2v0h35w7skd3pipqvh88h14r-rust/lib/rustlib/x86_64-unknown-linux-gnu/lib/libadler-099cf0af4375543b.rlib" "/nix/store/3f6c9z0y2v0h35w7skd3pipqvh88h14r-rust/lib/rustlib/x86_64-unknown-linux-gnu/lib/libobject-b5f18e83369ef257.rlib" "/nix/store/3f6c9z0y2v0h35w7skd3pipqvh88h14r-rust/lib/rustlib/x86_64-unknown-linux-gnu/lib/libaddr2line-3bb19daa4485d5fe.rlib" "/nix/store/3f6c9z0y2v0h35w7skd3pipqvh88h14r-rust/lib/rustlib/x86_64-unknown-linux-gnu/lib/libgimli-5298ab0591e7fb29.rlib" "/nix/store/3f6c9z0y2v0h35w7skd3pipqvh88h14r-rust/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_demangle-2e4947d254d0b599.rlib" "/nix/store/3f6c9z0y2v0h35w7skd3pipqvh88h14r-rust/lib/rustlib/x86_64-unknown-linux-gnu/lib/libhashbrown-1532436f783b0405.rlib" "/nix/store/3f6c9z0y2v0h35w7skd3pipqvh88h14r-rust/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_alloc-3d12d76f5782439f.rlib" "/nix/store/3f6c9z0y2v0h35w7skd3pipqvh88h14r-rust/lib/rustlib/x86_64-unknown-linux-gnu/lib/libunwind-87f8d20d4e058c86.rlib" "/nix/store/3f6c9z0y2v0h35w7skd3pipqvh88h14r-rust/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcfg_if-d41f1ff31e4e0f27.rlib" "/nix/store/3f6c9z0y2v0h35w7skd3pipqvh88h14r-rust/lib/rustlib/x86_64-unknown-linux-gnu/lib/liblibc-0d5ea4f2d39b8e27.rlib" "/nix/store/3f6c9z0y2v0h35w7skd3pipqvh88h14r-rust/lib/rustlib/x86_64-unknown-linux-gnu/lib/liballoc-31288459e6a43502.rlib" "/nix/store/3f6c9z0y2v0h35w7skd3pipqvh88h14r-rust/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_core-c52e5d6301e1bd59.rlib" "/nix/store/3f6c9z0y2v0h35w7skd3pipqvh88h14r-rust/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcore-2675a9a46b5cec89.rlib" "-Wl,--end-group" "/nix/store/3f6c9z0y2v0h35w7skd3pipqvh88h14r-rust/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcompiler_builtins-f51baad7bbcb81c4.rlib" "-lutil" "-lrt" "-lpthread" "-lm" "-ldl" "-lc" "-lgcc_eh" "-lgcc" "-Wl,-Bdynamic"
  = note: /nix/store/p792j5f44l3f0xi7ai5jllwnxqwnka88-binutils-2.31.1/bin/ld: cannot find -lutil
          /nix/store/p792j5f44l3f0xi7ai5jllwnxqwnka88-binutils-2.31.1/bin/ld: cannot find -lrt
          /nix/store/p792j5f44l3f0xi7ai5jllwnxqwnka88-binutils-2.31.1/bin/ld: cannot find -lpthread
          /nix/store/p792j5f44l3f0xi7ai5jllwnxqwnka88-binutils-2.31.1/bin/ld: cannot find -lm
          /nix/store/p792j5f44l3f0xi7ai5jllwnxqwnka88-binutils-2.31.1/bin/ld: cannot find -ldl
          /nix/store/p792j5f44l3f0xi7ai5jllwnxqwnka88-binutils-2.31.1/bin/ld: cannot find -lc
          collect2: error: ld returned 1 exit status

error: aborting due to previous error

setting SOURCE_DATE_EPOCH to timestamp<PHONE_NUMBER> of file syn-1.0.44/Cargo.toml
unpacking sources
unpacking source archive /nix/store/hjqy27dq1bc1gq9afyh4bwrv5yaqgh1c-which-3.1.1.tar.gz
patching sources
configuring
source root is which-3.1.1
Running cd .
setting SOURCE_DATE_EPOCH to timestamp<PHONE_NUMBER> of file which-3.1.1/Cargo.toml
patching sources
configuring
Running cd .
Building build.rs (syn)
Running rustc --crate-name build_script_build build.rs --crate-type bin -C debuginfo=2 -C codegen-units=10 -C target-feature=+crt-static --edition 2018 --cfg feature="clone-impls" --cfg feature="default" --cfg feature="derive" --cfg feature="extra-traits" --cfg feature="full" --cfg feature="parsing" --cfg feature="printing" --cfg feature="proc-macro" --cfg feature="quote" --cfg feature="visit-mut" --out-dir target/build/syn --emit=dep-info,link -L dependency=target/buildDeps --cap-lints allow --color always
building
Building src/lib.rs (which)
Running rustc --crate-name which src/lib.rs --out-dir target/lib -L dependency=target/deps --cap-lints allow -C debuginfo=2 -C codegen-units=10 --remap-path-prefix=/build=/ --extern libc=/nix/store/gfny6275zp8z2vv792g4pnfnwxy1x057-rust_libc-0.2.79-lib/lib/liblibc-d402711b81.rlib -C target-feature=+crt-static --edition 2015 -C metadata=a553ffe869 -C extra-filename=-a553ffe869 --crate-type lib --color always
builder for '/nix/store/0hkpkfavj343a84nssyqs3phz2fqmy1m-rust_nix-0.15.0-armv7l-unknown-linux-gnueabihf.drv' failed with exit code 1
cannot build derivation '/nix/store/ddh2hvibpimmr97ng3z7kwi4hamrf259-rust_client-0.1.0-armv7l-unknown-linux-gnueabihf.drv': 1 dependencies couldn't be built
error: build of '/nix/store/ddh2hvibpimmr97ng3z7kwi4hamrf259-rust_client-0.1.0-armv7l-unknown-linux-gnueabihf.drv' failed

I tried providing overrides, which worked for dependency crates that have build.rs scripts, but not for the final one defined in the workspace:
  client = attrs: {
        nativeBuildInputs = [
          pkgs.buildPackages.glibc.static
        ];
        buildInputs = [
          pkgs.glibc.static
        ];
      };

Is this the right approach for providing dependencies to build scripts?

I also see this error with crt-static
error: the `#[proc_macro_attribute]` attribute is only usable with crates of the `proc-macro` crate type
   --> src/lib.rs:186:1
    |
186 | #[proc_macro_attribute]
    | ^^^^^^^^^^^^^^^^^^^^^^^

error: the `#[proc_macro_derive]` attribute is only usable with crates of the `proc-macro` crate type
   --> src/lib.rs:207:1
    |
207 | #[proc_macro_derive(ProcMacroHack)]
    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: the `#[proc_macro_attribute]` attribute is only usable with crates of the `proc-macro` crate type
   --> src/lib.rs:219:1
    |
219 | #[proc_macro_attribute]
    | ^^^^^^^^^^^^^^^^^^^^^^^

which seems similar to this issue https://github.com/rust-lang/rust/issues/71651. Maybe targetFeatures shouldn't be used for both proc macros and build scripts?

I see

note: "cc"

I think you want a prefixed cc to be there?

I think that's correct because the build script is being built for the x86 host architecture.

Nevermind I think I made an assumption about the name "build_script_build.build_script_build". Not sure I'm right there.

Oh I didn't see the horizontal scrollbar. Perhaps you can make a public reproduction of the issue so we could dive deeper?

Sure. I'll put a repo together.

Here it is https://github.com/joprice/rust-nix-test.
You should be able to repro with nix-build. Let me know if you need more info.
I also had some othre local workarounds I tried that I can add back in where I attempted to add static libc to the crates that were having issues, but it didn't seem to help much:
 hasBuildScript = attrs: attrs // {
      nativeBuildInputs = (attrs.nativeBuildInputs or [ ]) ++ [ cross.buildPackages.glibc ];
      buildInputs = (attrs.buildInputs or [ ]) ++ [ cross.glibc.static ];
      extraRustcOpts = attrs.extraRustcOpts ++ extraRustcOpts;
    };

I then added that to crateOverrides for each dependency that was linking to glibc. Is there a way to do that more generally, or should that not be needed?

Thanks! I'll be able to look tomorrow.

I believe crate2nix is not actively maintained for some time. I just forked this for my own purposes and started addressing problems that matter to me in my fork.

https://github.com/kolloch/crate2nix/commits/master Oh I see, the commits have been fairly rote as of late.

Yeah, I had a conversation with Peter a few days ago and neither of us
are currently really looking after this project. I'll try to pickup some
of the slack in the next month. I'll be looking for a contract /
employer so that leave plenty of time to work on (F)OSS. :)

Hi @lopsided98, @Ericson2314, @nagisa, @joprice,
Sorry, if there is still interest in this, I will find time this week (probably during the weekend). Just ping here. A real-time channel for chatting would be nice to resolve any issues near-time then. E.g. a video conference on Saturday evening.

I can't speak for @lopsided98, but I would really like to see this be finished, and perhaps can do a call then. I'll have to catch up on exactly what's here too!

I don't want to put any undue pressure as I'm currently only using it for hobby purposes, but I'm willing to pitch in if I can.

My priorities shifted elsewhere recently, so I didn't get a chance to finish this. I'm available this weekend to work on this.
This is my understanding of the known issues:

Backwards compatibility regarding the removal of the buildRustCrate argument
Build failure while cross-compiling crate2nix. Unfortunately I didn't record the error. I will try to reproduce it.
musl static build fails. Based on https://github.com/rust-lang/rust/pull/69519, I agree with @joprice that the issue described in this comment is probably caused by passing -C target-feature=+crt-static, which bypasses the logic in that PR. Normally, the crt-static feature would be specified in the target spec JSON. My first thought is that the correct solution might be to make pkgsStatic.buildPackages.rustc build (which would provide a rustc with the correct target spec), and provide a way for crate2nix to know what target features are specified in the target spec (for dependency resolution).

This is the error I'm running into while trying to cross-compile crate2nix:
Running rustc --crate-name tera src/lib.rs --out-dir target/lib -L dependency=target/deps --cap-lints allow -C opt-level=3 -C codegen-units=8 --remap-path-prefix=/build=/ --extern globwalk=/nix/store/6ljrk7wx3zj274lc5iyn6gbc79fp3afv-rust_globwalk-0.8.0-armv7l-unknown-linux-gnueabihf-lib/lib/libglobwalk-934342f2ce.rlib --extern lazy_static=/nix/store/xp2dhq4lflv8wiciffhy6qi7ynh37rrp-rust_lazy_static-1.4.0-armv7l-unknown-linux-gnueabihf-lib/lib/liblazy_static-28e1bf1896.rlib --extern pest=/nix/store/w0b7mqzz5x6nk4s2imfylrlj8rbmny74-rust_pest-2.1.3-armv7l-unknown-linux-gnueabihf-lib/lib/libpest-19c5caddb3.rlib --extern pest_derive=/nix/store/a7jjv88gdh4ammlz82jpwdkajqh91bhg-rust_pest_derive-2.1.0-lib/lib/libpest_derive-906e1d4536.so --extern regex=/nix/store/8k15lv58jgnkr1q6palb9rm3hl36rc95-rust_regex-1.3.6-armv7l-unknown-linux-gnueabihf-lib/lib/libregex-125ab14a6c.rlib --extern serde=/nix/store/yscsvvw87299n4wk388pl5dwf9arya3f-rust_serde-1.0.106-armv7l-unknown-linux-gnueabihf-lib/lib/libserde-c85fcc631e.rlib --extern serde_json=/nix/store/qhswm66qjzayhrq6a32wnp8lclmmpj9m-rust_serde_json-1.0.51-armv7l-unknown-linux-gnueabihf-lib/lib/libserde_json-80b064783c.rlib --edition 2018 --target armv7-unknown-linux-gnueabihf -C linker=armv7l-unknown-linux-gnueabihf-gcc -C metadata=aeed81cbc0 -C extra-filename=-aeed81cbc0 --crate-type lib --color always
error[E0461]: couldn't find crate `ucd_trie` with expected target triple armv7-unknown-linux-gnueabihf which `pest` depends on
 --> src/parser/mod.rs:4:5
  |
4 | use pest::iterators::Pair;
  |     ^^^^
  |
  = note: the following crate versions were found:
          crate `ucd_trie`, target triple x86_64-unknown-linux-gnu: /nix/store/sqrq8gfqzn1x87lj80f700xj6jxdjnq2-rust_ucd-trie-0.1.3-lib/lib/libucd_trie-71f45caf6f.rlib

error: aborting due to previous error

@lopsided98 Should have sent you contact details via the contact form on your webpage.
Got the CI/CD running again and merge the PR that you are dependent on.

@kolloch ping me on IRC if you still want to work on this real time.

The tera failure is a bug in buildRustCrate. It occurs when the a crate depends on the host and build versions of the same crate. The rlib hash suffix doesn't include the platform, so both versions have the same rlib name, and clobber each other when they are added to the dependency directory.

See https://github.com/NixOS/nixpkgs/pull/105305

@joprice I was able to make a modified version of your repo build, albeit with stable Rust and musl. See below for the diff.

rust-nix-test diff
diff --git a/common.nix b/common.nix
index a119809..750d9ae 100644
--- a/common.nix
+++ b/common.nix
@@ -1,46 +1,21 @@
 let
   mozOverlay = import (builtins.fetchTarball https://github.com/mozilla/nixpkgs-mozilla/archive/master.tar.gz);
-  pkgs = (
-    import <nixpkgs>
-      {
-        overlays = [
-          mozOverlay
-          (
-            self: super: {
-              rustChannel = self.rustChannelOf {
-                rustToolchain = ./rust-toolchain;
-              };
-              cargo = self.rustChannel.rust;
-              rustc = self.rustChannel.rust;
-            }
-          )
-        ];
-      }
-  ).pkgsCross.armv7l-hf-multiplatform;
-  alsaLibStatic = (pkgs.alsaLib.overrideAttrs
-    (o: {
-      configureFlags = [
-        "--enable-shared=no"
-        "--enable-static=yes"
-      ];
-    }));
+  pkgs = (import <nixpkgs> {}).pkgsCross.armv7l-hf-multiplatform.pkgsStatic;
   crateOverrides = pkgs.defaultCrateOverrides // {
     alsa-sys = attrs: attrs // {
       nativeBuildInputs = (attrs.nativeBuildInputs or [ ]) ++ [
         pkgs.buildPackages.pkg-config
       ];
-      buildInputs = (attrs.buildInputs or [ ]) ++ [ alsaLibStatic ];
+      buildInputs = (attrs.buildInputs or [ ]) ++ [ pkgs.alsaLib ];
     };
     prost-build = attrs: attrs // {
       PROTOC = "${pkgs.buildPackages.protobuf}/bin/protoc";
     };
     client = attrs: attrs // {
       PROTOS_DIR = ./proto;
-      buildInputs = [
+      nativeBuildInputs = [
         # this is needed to format the generated grpc code
         pkgs.buildPackages.rustfmt
-        # TODO: add to all packages (expect proc macro and build scripts)?
-        # pkgs.glibc.static
       ];
     };
   };
@@ -48,10 +23,6 @@ let
     ./Cargo.nix
     {
       release = false;
-      # NOTE: cross building works with this disabled
-      targetFeatures = [
-        "crt-static"
-      ];
       defaultCrateOverrides = crateOverrides;
     };
 in
@@ -59,6 +30,6 @@ in
   pkgs = pkgs;
   build = cargo_nix.allWorkspaceMembers;
   shell = pkgs.mkShell {
-    nativeBuildInputs = [ pkgs.buildPackages.rustChannel.rust ];
+    nativeBuildInputs = [ pkgs.buildPackages.rustc ];
   };
 }

I looked into using the Mozilla overlay, but I couldn't see how to make it use musl on armv7l. It looks like std is built for armv7-unknown-linux-musleabihf, but I don't see a way of combining that with the x86_64-unknown-linux-gnu rustc.
I don't think we really should be passing -C target-feature= to rustc in most cases. Features should normally be specified in the target spec and if crates need to know about them, there should be some way to getting them from rustc through Nix for crate2nix to use.
On the other hand, if we want to try to make crt-static work for now, we could add some logic to mimic what rustc does and not pass it to proc macros. IMO that is out of scope of this PR though.

I think that leaves only the backwards compatibility and debug tool breakage issues, which I still haven't figured out a good way to solve.

I think I only had to use a specific nightly because it had some improved handling for static compilation. I'll try your changes on the original code and see if the remaining deps compile, and add them to the test repo if they don't.

@lopsided98 I tried your changes and got this error:
thread 'main' panicked at 'when targeting MUSL either the rust.musl-root option or the target.$TARGET.musl-root option must be specified in config.toml', src/bootstrap/sanity.rs:208:25
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
failed to run: /build/rustc-1.45.2-src/build/bootstrap/debug/bootstrap build --jobs 10
Build completed unsuccessfully in 0:00:31
make: *** [Makefile:18: all] Error 1

I assume this fix relies on a change you did in nixpkgs as well, since using the latest commit of nixpkgs worked.

@joprice Yes, you need https://github.com/NixOS/nixpkgs/pull/105314

Works great for me (aarch64 -> armv6l).
What more needs to be done to merge this?

Works great for me (aarch64 -> armv6l).
What more needs to be done to merge this?

N.B. I am preparing an additional commit with my suggestions.

N.B. I am preparing an additional commit with my suggestions.

OK, PR against the PR at https://github.com/lopsided98/crate2nix/pull/1.

OK, PR against the PR at https://github.com/lopsided98/crate2nix/pull/1.

Heyo @Ericson2314, the test failure on linux looks legit. Feel free to ignore the one on Mac OS.

Heyo @Ericson2314, the test failure on linux looks legit. Feel free to ignore the one on Mac OS.

I merged the follow up from @Ericson2314 .
Thank you for this :)

I merged the follow up from @Ericson2314 .
Thank you for this :)

Here it is https://github.com/joprice/rust-nix-test.
You should be able to repro with nix-build. Let me know if you need more info.
I also had some othre local workarounds I tried that I can add back in where I attempted to add static libc to the crates that were having issues, but it didn't seem to help much:
 hasBuildScript = attrs: attrs // {
      nativeBuildInputs = (attrs.nativeBuildInputs or [ ]) ++ [ cross.buildPackages.glibc ];
      buildInputs = (attrs.buildInputs or [ ]) ++ [ cross.glibc.static ];
      extraRustcOpts = attrs.extraRustcOpts ++ extraRustcOpts;
    };

I then added that to crateOverrides for each dependency that was linking to glibc. Is there a way to do that more generally, or should that not be needed?

I would love if there was some doc in the README.md -- looks like you already collected some experience on how to use it.

Here it is https://github.com/joprice/rust-nix-test.
You should be able to repro with nix-build. Let me know if you need more info.
I also had some othre local workarounds I tried that I can add back in where I attempted to add static libc to the crates that were having issues, but it didn't seem to help much:
 hasBuildScript = attrs: attrs // {
      nativeBuildInputs = (attrs.nativeBuildInputs or [ ]) ++ [ cross.buildPackages.glibc ];
      buildInputs = (attrs.buildInputs or [ ]) ++ [ cross.glibc.static ];
      extraRustcOpts = attrs.extraRustcOpts ++ extraRustcOpts;
    };

I then added that to crateOverrides for each dependency that was linking to glibc. Is there a way to do that more generally, or should that not be needed?

I would love if there was some doc in the README.md -- looks like you already collected some experience on how to use it.

For reference, this was the follow up PR: https://github.com/kolloch/crate2nix/pull/160

For reference, this was the follow up PR: https://github.com/kolloch/crate2nix/pull/160


Store LP per account

We want to know how many users and how often they LP into pools. We want to track the deposits and withdrawals from pools for this.
We'd want the following data:

amounts (as in cumulativeDexTradingVolumes) consisting of amount, amountHuman, and token
tillTimestamp
type of either deposit or withdrawn
block
accountId

PR #115 is up for review
See a sample query and results in this comment.


Fix race condition that can create multiple iframes

This change fixes a race condition on reveald3 whereas sometimes multiple iframes can get created.
Because the check for the presence of previous iframes was previously done before an await statement, two calls to initialize can happen concurrently, both of them get an empty list, both of them asynchronously await, and both of them create the new iframe. By checking for the presence of the iframe and creating an iframe inside the same synchronous block, we guarantee no race conditions.

Thanks @cscheid!


[Don't Merge] A Test PR

Docs Build status updates of commit aec4f9e:
:warning: Validation status: warnings

File
Status
Preview URL
Details

TocTest/articles/network-watcher/network-watcher-topology-powershell.md
:warning:Warning

Details

TocTest/articles/network-watcher/network-watcher-topology-powershell.md

Line 0, Column 0: [Warning: h1-missing - See documentation] H1 is required. Use a single hash (#) followed by a space to create your top-level heading.
Line 1, Column 1: [Warning: author-missing - See documentation] Missing required attribute: 'author'. Add the current author's GitHub ID.
Line 1, Column 1: [Warning: title-missing - See documentation] Missing required attribute: 'title'. Add a title string to show in search engine results.
Line 1, Column 1: [Warning: ms-author-missing - See documentation] Missing required attribute: 'ms.author'. Add the current author's Microsoft alias.
Line 1, Column 1: [Warning: ms-prod-or-service-missing - See documentation] One of the following attributes is required: 'ms.prod', 'ms.service'. Use ms.prod for on-premise products, or ms.service for cloud services.
Line 5, Column 1: [Warning: file-not-found - See documentation] Invalid file link: 'non-exist-file.md'.
Line 6, Column 1: [Warning: bookmark-not-found] Cannot find bookmark '#non-exist-bookmark' in 'articles/network-watcher/network-watcher-topology-powershell.md'.
Line 1, Column 1: [Suggestion: description-missing - See documentation] Missing required attribute: 'description'.

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel


Shaders are not working.

I tried using Bicubic 3.4 in BetterRenderDragon 1.3.3, but nothing seems to be working, and it's just vanilla Minecraft.
https://youtu.be/t8M9Gm44noA

I've already tried it. The result is the same.

What version of MCBE are you using?

Ah sorry its 1.20.1

Maybe you can try remove some of my previous shader

It has been resolved.
I tried deleting the resource pack and reloading the mcpack several times, and finally succeeded.

i have same issue can u tell me u r discord to solve the problem plz


Missing init file and ignore downloaded files

I had to an a init folder protonets to run the train script.  Also noticed a few downloaded files would have been added to github if they weren't added to the ignore file.

Thanks Rich!!


Updated os-x install doc

This worked for me to get multiprocessing up and running on os-x. I think the main thing was also setting the [atlas] header to point to openblas.

Thanks!


It is possible to change the response_type  of OAUTH2 authorization request?

Hi ,
I use the envoy 1.29-latest and OAUTH2 extension type.googleapis.com/envoy.extensions.filters.http.oauth2.v3.OAuth2
And i see in the HTTP call that envoy always send response_type=code
It's normal ? ans it's possible to change this value ?
Thx

Hi @jean13360, could you provide more detail about the desired behavior?

Yes
Normally with Oauth2 , when you do an authorization , one parametes is response_type .
This parameters tells the authorization server which grant to execute (https://auth0.com/docs/authenticate/protocols/oauth).
And this parameters can have multiple value like response_type=id_token token
It's possible to change the parameters response_type in envoy during the authorization phase ?
Thx

Basically the Authorization Code grant is the only supported flow (well also refresh technically), it's hard-coded in here:
https://github.com/envoyproxy/envoy/blob/b47fc6648d7c2dfe0093a601d44cb704b7bad382/source/extensions/filters/http/oauth2/filter.cc#L138
we could look into supporting the Implicit grant flow (id_token and token). It's considered less secure than Authorization Flow but if it's the desired configuration we should be able to support it.

We can repurpose this ticket to "Support OAuth 2.0 Implicit Grant"?

worth noting response_type=token is deprecated[1] and being removed in the new OAuth 2.1 spec [2].
[1] https://datatracker.ietf.org/doc/html/draft-ietf-oauth-security-topics-24#name-implicit-grant
[2] https://datatracker.ietf.org/doc/html/draft-ietf-oauth-v2-1-10#name-removal-of-the-oauth-20-imp


FE frontend and backend separation

According to https://github.com/apache/incubator-doris/issues/4308
In order not to affect the original http server, resubmit the code

这个提交错了大家忽略


Link to script is missing

In step 4.3 Enable Kerberos constrained delegation a script named KCDSetup.ps1 is mentioned with a link that directs to the old TechNet gallery.  It gets redirected to MS Code Samples where the script does not appear.

Document Details
⚠ Do not edit this section. It is required for learn.microsoft.com ➟ GitHub issue linking.

ID: af5d56ce-6ce8-772c-f1c5-c314b9f05dcd
Version Independent ID: 2ca4d497-707f-4507-7431-ef3fdbb3ec7d
Content: Deploy Storage Spaces Direct on Windows Server
Content Source: WindowsServerDocs/storage/storage-spaces/deploy-storage-spaces-direct.md
Product: windows-server
Technology: storage-spaces
GitHub Login: @StevenEk
Microsoft Alias: inhenkel

Other scripts are missing as well, like the one targeting Hyper-V.
It was in the TechNet Gallery under SMB Share Configuration for Hyper-V Workloads.
It would be good to see how they worked, so we can know if we did everything correctly.

You can still get the script from here:
http://web.archive.org/web/20200319080905/https://gallery.technet.microsoft.com/SMB-Share-Configuration-4a36272a

We hugely appreciate your contribution, feedback, and support to our technical documentation.
We’ve phased out GitHub Issues on this repository as the feedback mechanism for content and have replaced it with a new feedback system. For more information see, Content User Feedback. As part of this rollout, we are migrating your issue where our team will use your comments to improve the documentation experience. Unfortunately, this does mean you won't be able to access this issue after the migration is complete.
All issues will be migrated by Thursday 29th August 2024.
Once again, thank you for your valuable feedback, we hope you’ll continue to contribute using our new feedback system.


Use sky properly for ambient and reflections

This fixes an unreported bug where the sky would not be used even when ambient_source or reflection_source was set to "Sky" but background was not. This effectively rendered the "Sky" setting useless for ambient_source and reflection_source.
I also renamed environment_get_ambient_light_ambient_source() -> environment_get_ambient_source() and environment_get_ambient_light_ambient_energy() -> environment_get_ambient_light_energy() as I assumed the previous names were copy-paste typos.
This change just allows Skys to be updated and used even when they are not being used as a background.

Thanks!


Krita

Title of the app are org.kde.krita (both Flatpak and in command native package format).

Duplicate of #9


Added dns config param

Sample DNS Configuration.
dnsConfig:
    nameservers:
    - <IP_ADDRESS>
    searches:
    - svc.cluster.local
    - cluster.local
    - {{ .Values.region }}.compute.internal
    options:
    - name: ndots
      value: '2'

DNS Config allows us to provide custom DNS routing rules to enable Pods with Host network to search Kubernetes services and endpoints.

@TylerHelmuth @dmitryax
In reference to this closed PR, applied changes again to latest version of the chart. I am again in need of DNS config - Had managed using a custom fork at that time but need it with this latest version today.

@TylerHelmuth Tried running make generate-examples, its ending up deleting some files due to incorrect path parsing.
Could you take a look and advice what would be the right approach there.

@datsabk try make generate-examples CHARTS=opentelemetry-collector

Okay - I think the PR is ready to go @TylerHelmuth

Do we need to include these changes in statefulset.yaml?

Done

Please rebase and re-generate the example

@dmitryax Done.

@datsabk you need to bump the chart version, generate examples and then commit all files

@Allex1 Thanks for pointing it out. Didn't realise patch version 0.59.2 was already done. Changed it to 0.59.3 now

@Allex1 Looks like I'm not authorised to merge this one - Could you help with that.

@TylerHelmuth @povilasv - Could anyone of you help with merging this PR. I see it has got a couple of approvals and is good for merge. Wanted to make sure it gets merged before any other conflicts arise :)


Bugs I've found.

Chests and certain other interactable blocks give infinite research, while others, like beds, can't be scanned. Dropped items can't be scanned. Liquids like lava and water seem unscanable. However, I apparently managed to scan water, which I don't remember and can't replicate. Finally, for some reason, this bauxite ore is displaying an aspect that doesn't exist, which goes away when I remove this mod. I forgot to show it, but I also can't scan animals.
bugs.webm

@xxXCuriositykilledthecatXxx thank you for your interest in my mod. When I open a fresh creative world I don’t see any of these issues. Mind helping me do a bit more troubleshooting by answering some questions?

Are you using the latest version of the mod? (1.0.1 at time of posting this)
How did you obtain the mod? (Curseforge or github release)
Do you see these errors when launching with just this mod and thaumcraft (and baubles since that’s a thaum dependency) or do you have other mods in your instance that might be conflicting.

I am using the latest version, first obtained from Curseforge later from Github. I just tried it without anything else and it simply broke, it acted like it wasn't installed. I tried reinstalling, switching to a brand new instance as I was using a testing instance, and it just stopped working. Also all the aspect textures are now broken.

I apologize in advanced, as I'll probably have to keep asking follow up questions since several people I've talked with are actively using the mod without these issues (myself included). Screenshots are helpful, thank you for providing them.
The top bar of your minecraft window looks odd. Are you using forge mod loader? What operating system and modded client?

I'm using forge mod loader version <IP_ADDRESS>60, however on a different instance I made to test this it was on <IP_ADDRESS>59. SO let me test if this is a forge version issue. I'm also on linux.
I've booted up my normal instance where I was first messing with the mod, and it's working perfectly besides the issues I originally listed.

I changed forge versions, and the issues persist.

hang on a second. Why does your chest have Spatio? what mod adds that aspect? whatever addons you are using might be causing the issues.

That's planar artifice, and I'm currently trying mod combinations to see what is making this mod work for me in my main instance. So far I've checked thaumic speedup.

Alright I found it. For some reason the mod doesn't work for me without mixin booster. I have the 8.9 version installed.

i thought this mod require mixin booter mod

Also, all the issues I started this thread with still exist, even after updating mixin booster. However, confusingly, I managed to scan an ignis crystal, yet I can't replicate this on other dropped items.

I just managed to figure out that I can scan dropped items; I just need to scan them without a block behind them. However, different vis crystals seem to all be considered one scan. None of them have the particles that show that you can scan them after I scanned an ignis crystal.

i thought this mod require mixin booter mod

It does require mixin booter, I've been using 8.8 but 8.9 should work fine.

It does require mixin booter, I've been using 8.8 but 8.9 should work fine.

Please put that information on the Curseforge page, and the github readme.

I just tested it and the mod works perfectly with mixin booster 8.8, it seems all my issues are from using a newer version.

I just tested it and the mod works perfectly with mixin booster 8.8, it seems all my issues are from using a newer version.

I take that back. The liquid scanning issue and the item scanning issue are still present.

The newest update fixed all of this issues.


[FLINK-4108] [scala] Consider ResultTypeQueryable for input formats

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

[x] General

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

[x] Documentation

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

[x] Tests & Build

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

This PR fixes issues with input formats (i.e. the JDBC input format) in the Scala API. Now the API also considers explicit information defines with ResultTypeQueryable.

Works OK  ¡¡
Capture Output
Thanks, Alb

Reverting the change and merging


mise settings improvements

mise settings has been improved in the latest releases and now offers json output. Thank you!
❯ mise settings --json
{
  "disable_backends": "[\"java\"]",
  "experimental": true
}

❯ mise settings --toml
disable_backends = ["java"]
experimental = true

❯ mise settings
Key               Value    Source
disable_backends  ["java"] ~/.config/mise/config.toml
experimental      true     ~/.config/mise/config.toml

Would it be possible to make the following changes? (I can create PRs)

toml and/or json output could include the source of the settings, like it does for the table output (I have a similar request for mise env --json in https://github.com/jdx/mise/issues/3012)

{
  "experimental": { "value": true, "source": "~/.config/mise/config.toml" }
}

arrays are shown as strings in the json output, but not in the toml output. I believe this might be a bug?

For context, I am trying to display them in https://github.com/hverlin/mise-vscode:

I have also noticed that python.default_packages_file does not show in the default output, even it's different from the default value. I might use the default output from mise going forward, but just curious why isn't it shown?

arrays are shown as strings in the json output, but not in the toml output. I believe this might be a bug?

looks like escape characters are added to the json output that shouldn't be there. I think in json we should return arrays but in toml it should probably return one string for the array delimited by how the settings get read in. Otherwise you wouldn't be able to take the output from this command and use it as input into another config file.

toml and/or json output could include the source of the settings, like it does for the table output (I have a similar request for mise env --json in https://github.com/jdx/mise/issues/3012)

I considered doing that in the initial version but the output is a lot less friendly IMO. I think we should add this behind a --sources flag for json and toml

looks like escape characters are added to the json output that shouldn't be there. I think in json we should return arrays but in toml it should probably return one string for the array delimited by how the settings get read in. Otherwise you wouldn't be able to take the output from this command and use it as input into another config file.

So the toml output stays as is. However, I can update the json output to:
{
  "disable_backends": ["java"],
  "experimental": true
}

I agree that the toml with sources might not be so useful. What about adding an extra output format: --json-with-sources for both mise settings and mise env?
mise settings ls --json-with-sources
{
  "disable_backends": { "value": ["java"], "source": "~/.config/mise/config.toml" },
  "experimental": { "value": true, "source": "~/.config/mise/config.toml" }
}

I think that's a good idea. Makes it clear it's only for json


ARM Network API version mismatch?

I'm trying to make requests using the ARM virtual network client.
According to master the version is currently 2015-05-01-preview, but responses to API calls suggest this is not a valid version:
{
    "error": {
        "code": "InvalidApiVersionParameter",
        "message": "The api-version '2015-05-01-preview' is invalid. The supported versions are '2015-11-01,2015-01-01,2014-04-01-preview,2014-04-01,2014-01-01,2013-03-01,2014-02-26,2014-04'."
    }
}

Am I missing something obvious here or is it not currently possible to use the ARM API client for network resources?

This appears to have been fixed (I assume the endpoint was turned back on).


Relying on stable packages?

When I try to run dotnet restore for my project which has this as its tool dependency, I get an error that Microsoft.Extensions.CommandLineUtils could not be resolved.
It is trying to resolve some alpha version which is not even present in the NuGet feed (https://www.nuget.org/packages/Microsoft.Extensions.CommandLineUtils/1.0.0).
Is there any chance we could maybe use 1.0.0 instead, which is stable? What is the reason for the alpha version being used instead?

Good catch

Is there any chance we could maybe use 1.0.0 instead, which is stable?

I'll work on putting out a 1.0.1 release which will use the correct stable packages.

What is the reason for the alpha version being used instead?

This started mainly as a learning exercise to figure out the .net core tooling and I used the EF Core tools as an example. I probably was looking at their dev branch when I first started and probably just copied some of the dependencies (I believe I had their dev nuget feed added to my dev machine at the time - recently reformated so not really sure if I did).
Once I decided to publish I should have reverted to stable packages before doing so and that's on me... hopefully I'll have something out shortly.

Just published 1.0.1 to nuget so you should be able to update (might not be in the search just yet but if you set the version manually in the package.json it should download). Since I just reformatted I went ahead and created a base .net core web app and tried the 1.0.0 version and got the restore error. 1.0.1 restored just fine however so you should be good to go!
Please let me know if you have any other issues or any feature requests.


Use plugin with ipv6 ...

Hi,
I try to use emqx with the lwm2m server plugin but in the configuration option we can just put the port.
If i try to set the port to "::1:5683" but service don't start.
I use a lwm2m client with a ipv6 coap address .
I have modified my conf file as it is described here :
https://github.com/emqx/emqx-tutorial-cn/blob/master/node-name-with-ipv6-address.md
best regards.
Tom

IPv6 is incoming, it will be supported in 4.1.0-alpha.3.

@Sellto We have released the v4.1-beta.1 Please try it.
Thanks :)


Use libc-test for horizon OS

In the interest of https://github.com/Meziu/rust-horizon/issues/6 – this takes a first pass at using the libc test runner to compare ABIs and type sizes, but could be improved to include function signatures, constants, etc.
My plan is not to merge this as-is, but break out the functional changes in libc and deliver them separately. Maybe we want a "testing" branch for this to run the tests?
Edit: a few instructions on how to actually run this, I forgot:

Use a horizon-std toolchain
Apply this patch for ctest2 to support the target:

diff --git a/src/lib.rs b/src/lib.rs
index c5c65ca..5126b8d 100644
--- a/src/lib.rs
+++ b/src/lib.rs
@@ -1122,6 +1122,8 @@ fn default_cfg(target: &str) -> Vec<(String, Option<String>)> {
         ("vxworks", "unix", "")
     } else if target.contains("haiku") {
         ("haiku", "unix", "")
+    } else if target.contains("nintendo-3ds") {
+        ("horizon", "unix", "newlib")
     } else {
         panic!("unknown os/family: {}", target)
     };

Set up patches in libc-test/.cargo/config.toml:

[patch.crates-io]
ctest2 = { path = "your/ctest2/fork" }

[patch."https://github.com/Meziu/libc.git"]
libc = { path = ".." }

[env]
CC_armv6k_nintendo_3ds = "/opt/devkitpro/devkitARM/bin/arm-none-eabi-gcc"
AR_armv6k_nintendo_3ds = "/opt/devkitpro/devkitARM/bin/arm-none-eabi-ar"

cargo 3ds test --test main. Other tests have link errors currently

Let me know if anything looks off here or you have questions, but I think this is a decent  point for us to test some ABI mismatches and stuff.
@Meziu @AzureMarker

Going through my old PRs and cleaning them up. This branch is pretty stale and I don't think it makes sense to upstream any of this, so just gonna close this, but it might be useful to dig up again if we ever run into ABI issues with libc in the future.


PR not created

Describe the bug
The PR is not created. In the action log, we can see:
# (...)
CONFIGURATION GIT USER
Switched to a new branch 'wip-translations-update'
PUSH TO BRANCH wip-translations-update
[wip-translations-update ba2445a] New Crowdin translations by Github Action
 1 file changed, 329 insertions(+)
 create mode 100644 nxdrive/data/i18n/i18n-eu.json
To https://github.com/nuxeo/nuxeo-drive.git
 + b009082...ba2445a wip-translations-update -> wip-translations-update (forced update)
CHECK IF ISSET SAME PULL REQUEST
CREATE PULL REQUEST
{
  "message": "Validation Failed",
  "errors": [
    {
      "resource": "PullRequest",
      "field": "base",
      "code": "invalid"
    }
  ],
  "documentation_url": "https://developer.github.com/v3/pulls/#create-a-pull-request"
}

See full logs.
The same action was working several day before: no code changes have been made either to the crowdin.yml file nor to the GitHub token.
To Reproduce

Crowdin Github Action configuration
crowdin.yml file content

Expected behavior
The PR should be created.

Hi @BoboTiG !
Please update your workflow to latest crowdin-action version. It should solve your issue.

It is fixed, thanks a lot :)


[Sleigh, Decompiler (Java)] Maximum number of operands is 8

My sleigh implementation has pseudo opcodes with 8 and more operands. Decompiler can't deal with that and prints an error:
ERROR Pcode error at ram:00002754: Index 8 out of bounds for length 8 (SleighInstructionPrototype)

Problematic line is here:
https://github.com/NationalSecurityAgency/ghidra/blob/master/Ghidra/Framework/SoftwareModeling/src/main/java/ghidra/app/plugin/processors/sleigh/PcodeEmit.java#L133

This could probably just be changed to an ArrayList.

Unfortunately this seems to be more involved than just changing it to a List. Maybe it has something to do with all the magic numbers in PcodeEmitPacked and this area of code in general?

Any updates? I see many useful solutions, but no one is merged yet!


Custom end state

Not all Jira issues use the "Done" state when an issue/severity alert is closed. Some use a custom state, such as "Closed". Provide a custom flag that will support this.

Makes sense. Note that, in theory, this should be straightforward, since we already have the constant CLOSED_STATUS. If we do this, it might also be necessary to have switches for custom transitions.


Cancel Payments

https://github.com/boomerdigital/solidus_amazon_payments/issues/26

@acreilly thanks for tackling this!
It would be great to avoid monkey-patching Spree::Payment::Processing if possible.  I wonder if we ought to be setting the response code on these payments, and if we did if that might provide a clean way to get at the data that we need?

@jordan-brough @manmartinez Please review.

FYI: Github is hiding it as "outdated" but I've left another comment here.


Update CMakeLists.txt for windows users

fixes:
https://github.com/artyomd/Quest-XR/issues/1

Thank you for the pr.


Use POINTonE1_affine* instead of POINTonE1*

Some functions are passed a pointer to POINTonE1_affine but their
prototype says they take a pointer to POINTonE1, which has one more
element than POINTonE1_affine. This commit changes the function
prototypes to use POINTonE1_affine instead of POINTonE1 in such
situation. Same for POINTonE2.

Merged, rearranged a little bit, re-formatted, and taken one step further with add-or-doubles. Thanks!
Just in case for reference. Early on there was no separate affine-point type. Affine-ness was defined solely by Z-coordinate being "1." Later on a case was made in favour of more compact storage on application side, and internally it was ensured that there were no references to Z coordinate for points cast-ed from affine, so that no out-of-bound references were performed. The latter, no out-of-bound, is effectively guaranteed by supported platforms' ABI specifications, the ones that prescribe structure layouts.
Thanks again!


EXIF.getData() --> getImageData() function should have a option to pass additional Request Header

I have integrate EXIF js into front end page, in this page the images are loading from AWS clouldfront. cloudfront is support Origin request header for cors 'access-control-allow-origin' header after configuration change. but plug has no option to pass additional request header.
   http.open("GET", img.src, true);
   http.setRequestHeader('Origin', window.location.origin);

So i have added new header according my requirements, this can also useful to setup initialize option in plugin.

Can someone add this to a library?

I have the same issue, how did you fix it?

How did you solve this issue?
I've tried to add http.SetRequestHeader but I get an error "Refused to set unsafe header 'Origin'"

I have used with CloudFront content.
The console is showing the warning because it's restricted reader header, but it's actually attaching Origin header,  if you will be seen request header in network tab.


_new_pool() function signature doesn't match urllib3

_new_pool for weakcipher custom connection pool manager does not match function signature in urllib3
https://github.com/DataDog/integrations-core/blob/395e066de3e635959c475c3264904688fc62adee/http_check/datadog_checks/http_check/http_check.py#L107
Similar to https://github.com/requests/requests/issues/4010

Closing for lack of activity in the corresponding PR


Fix missing INVALID_EXTENSION

24 hours has passed since 'approval: done' was set, but this PR has failing CI tests.  Once the tests pass it will get moved to 'approval: ready to merge' automatically, alternatively please review and set the label manually.

In an amusing coincidence, I had noticed the same thing last week but didn't get a chance to put together a PR.
I believe there was no practical effect because all entries after this in the table are related to TLS 1.3, and if EC is disabled that cascades through to disable TLS 1.3 as well, so we didn't actually reference anything at the wrong index.

The AppVeyor failures seem unrelated

Merged to 1.1.1, so closing.
Thank you for the submission!


Prevent data loss on save (entries and sections)

We add a timestamp check before saving records.
When saving a section, if the data changes between the render of the
page and the form post, it can lead to data loss if a field was added.
The SQL will crash because it assumes the fields did not change.
When saving and entry, the SQL was ok, but still, it can lead to data
loss.
At both places, the fix provided here makes sure we are editing the
lastest version of the record.
cc @brendo @michael-e

@nitriques nice touch was looking at this from an extension perspective to provide a locking functionality showing that another user is editing.
From what I can see however (code inspection) there is no way someone can confirm an override. So if I had two tabs open and/or there was another user who saved. But I actually want to save my version what does actually happen?
Secondly if I save and get the error, I'm presuming the post data would be pre-populated as per existing functionality. If so wouldn't saving again have the right time-stamp or is that also in a way maintained through post? Might have missed something as I didn't try it out.

So I'm assuming the position is that this protection will not be enabled for entries saved from Event's? This is purely a backend only feature to help in scenarios where there are multiple authors?

@brendo Indeed. Right now, the validation is in the publish pages. I did not wanted to break things with this feature. But any entry updated via the frontend will get a new mod_date, so the validation will fail for authors.

But I actually want to save my version what does actually happen?

Would have to start from scratch. I would hope to have time to do some diffs and try to resolve conflicts, but hey. that's hard.

Secondly if I save and get the error, I'm presuming the post data would be pre-populated as per existing functionality.

Exactly. Right now, the save will NEVER work. You have to refresh this page and start from scratch.
This is why it's a PR ;) Let's debate.

I understand the reasoning, but I still try to understand the solution.
Does this mean that still two people can open the same entry, but only the first save will be successful? This wouldn't be any better than "the last save wins" (which is what we have now).
Also, I think that any "lock" needs the possibilty to "override" the lock.
Shouldn't a proper solution prevent access to an entry that is edited currently (by another author)? (Also this would need the possibility to override the lock.)

Does this mean that still two people can open the same entry, but only the first save will be successful?

Yes.

This wouldn't be any better than "the last save wins"

I do not agree. We had calls from client because of this, and it took the activity tracker to prove to the client that this was happening. From a UX point of view, it's better IMHO.
I think that the current error message could be improve, to let the user know more about what happened, like who did the last save and on what time.

As I said before, I think that a proper solution should in advance prevent access to an entry that is currently edited (by another author). With your solution, authors will ask "Why have you allowed me to edit an entry if I am not allowed to save my work?". There is no good answer to that.
One way or another, there should be the possibility to override the "lock", i.e. save nevertheless.

Agreed re override. That's a must have.
Might also debate if this is something for the core to handle.. at least I
would be happy with this working as you suggested + another flag override
entry which would skip/ignore the check. Could be a checkbox in the UI -
but equally used by other API's to update entries regardless. So if I get
the error modal I don't need to re-start but I can say Ignore the other
dude's changes I want mine.
On Thu, Apr 27, 2017 at 2:42 PM, michael-e<EMAIL_ADDRESS>wrote:

As I said before, I think that a proper solution should in advance prevent
access to an entry that is currently edited (by another author). With your
solution, authors will ask "Why have you allowed me to edit an entry if I
am not allowed to save my work?". There is no good answer to that.
One way or another, there should be the possibility to override the
"lock", i.e. save nevertheless.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/symphonycms/symphony-2/pull/2659#issuecomment-297702209,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AA0ef8BbN3Vj8nn3bHEmA9qh2Mv5qpPwks5r0I0zgaJpZM4NEd69
.

I think that a proper solution should in advance prevent access to an entry that is currently edited

That's not always possible. Let's say I open the edit page and go make a coffee. I come back, edit and then press save: only then, do the system know that it's trying to edit based on old records.

One way or another, there should be the possibility to override the "lock", i.e. save nevertheless.

Ok this seems to make consensus, I'll do it. Thanks guys!

Why are we moving away from Symphony::Database() in favor of MySQL

Right now, cleanValue is static, so it should be called with the class name. This needs to change.
As for the UI, I've come up with this:

"The action requested…" sounds complicated. What about "Saving failed. The entry has been changed by Test on…"?
And instead of "Override? Please understand…" I would prefer "Overwrite these changes?".
This should be decided by a native speaker. @brendo, ah, no, he's Australian… Hmmm… :-)

Right now, cleanValue is static, so it should be called with the class name. This needs to change.

I understand. Thanks.

This should be decided by a native speaker. @brendo, ah, no, he's Australian… Hmmm… :-)

Hahaha. But yeah, I need help with that haha

I've got override working, and I'm back with the non-existing table problem hahaha

1914abc is the fix I've meant to not do, buy creating the timestamp validation. But with overriding in place, it still needed to be done. I hope the fix does not suck as much as I think it sucks, but hey, it the only was to do it.
@brendo if you could get your blessing regarding the wording... @michael-e and @jonmifsud suggested
Saving failed. The entry has been changed by Test on…

[ ] Don’t care about Joe’s changes? Yes I would much prefer if Joe’s changes never existed!

@michael-e @jonmifsud @brendo would you mind checking the last commit (fc9adc4). @michael-e I think we need to tell the user at least why Saving "failed" (I prefer aborted since that what's happening)

Mm, I wonder if the in field approach could be refined. At the moment, any 'errors' that occur at a generic level are introduced with a page alert. We have a convention where links can appear as well, and clicking on the link perform actions (usually navigation).
Would it be suitable to instead display a page alert along the lines of:
This entry has been changed by %s %s. _Replace anyway?_ or _View %s's entry_
eg. This entry has been changed by Brendan a few moments ago. Replace anyway? or View Brendan's entry.
I'm not sure if the Brendan's bit translates well though, how does it read in German/French?
This cleans up the interface and doesn't introduce a new field, a pattern that doesn't exist. Items in the main area are always the result of field or extension, never by the core.

I like this approach.

I'm not sure if the Brendan's bit translates well though, how does it read in German/French?

It's possible translation-wise: the German equivalent would be "Zeige Brendans Eintrag". But you'll run into trouble with names like mine which should be inserted as "View Nils' entry" and not "View Nils's entry". But it's possible to work that out with good copywriting.

But it's possible to work that out with good copywriting.

Yeah I'm wondering if other terms could work:

View changed entry
View changes (might imply diff like view though?)
View new entry
View updated entry
Show entry

View other entry?

Yes, debate, ideas!  I like Brendon's idea. It was my first idea, but it felt wrong with a check box in it...
Let me send some more commits ;)

Why does it need a checkbox? Could it be hidden and it's value changed by JS? Or checked by CSS target

Why does it need a checkbox? Could it be hidden and it's value changed by JS? Or checked by CSS target

It does not!!! Your solution is completely valid! I just did not thought of it!

@brendo There is even a bonus side effect of using the alert: We can display it in index pages as well!!!

How about this :

What about:

The entry could not be saved due to conflicting changes by X at Y. Dismiss changes? View changes.

I like @nilshoerrmann wording, it's succinct. My only worry is that "Dismiss changes" is too soft and doesn't clearly explain that you will essentially delete data. What about "Overwrite changes?" or "Replace changes"?

Both suggestions sound just fine.
I had the German word “verwerfen” in mind which translates to “dismiss” or “discard“. So maybe you should just decide, Brendan, because as a native speaker you know best what works in the English language.
My main intention was to shorten Nicolas’ message in order to align the wording of both actions with the rest of the interface.

If it's up to me, I'd vote for Replace changes

Yes I like this too!

Is it good to merge ?

Is it good to merge ?

I meant can I work on finishing this feature since the UI is ok ? :P

This thing will be an ongoing effort, since it's "complete" (meaning things that are implemented are working), I'll merge soon.


Error message on URL call

HI,
I use kirby 2 and I got the error
Fatal error: Call to a member function code() on a non-object in /homepages/17/d39311005/htdocs/sevendays/kirby/kirby.php on line 526
if I call the example.com/sitemap.xml
Do you know what I'm doing wrong?
Cheers

It doesn't seem to work with multilang enabled. I haven't found the time to look further into it.
Related line:
https://github.com/getkirby/kirby/blob/master/kirby.php#L526

Hi,
yes I use a multilanguage site.

:+1: for multilanguage support - i think it will need a sitemap per language like sitemap.en.xml and sitemap.da.xml

Hi,
I can confirm that the problem occurs with multi language support enabled.
I'm not able to provide a fix atm, but:

The error seems to come from kirby()->routes(...) and not the action inside. I haven't found any spec how the routesmethod must be used differently, when multilanguage is turned on.
In case multi language is turned on, the plugin should produce an output as it is described here: https://support.google.com/webmasters/answer/2620865?hl=en

Maybe that helps someone...


Build fails adding ContentProvider.

I updated to 1.6.0, and attempted to add a content provider to the project, the compilation fails, I get 200 errors, but cant find any error directly related to the content provider. My app also uses androidannotations (3.2)
This is what I added.
package nz.org.winters.android.nzmobileaccountwidget.provider;

import com.raizlabs.android.dbflow.annotation.provider.ContentProvider;

import nz.org.winters.android.widgetscommon.BuildConfig;
import nz.org.winters.android.widgetscommon.database.AppDatabase;

/**
 * Created by mathew on 25/02/15.
 */
@ContentProvider(authority = AppContentProvider.AUTHORITY,
        databaseName = AppDatabase.NAME,
        baseContentUri = AppContentProvider.BASE_CONTENT_URI)
public class AppContentProvider {
  public static final String AUTHORITY = "nz.org.winters.android.nzmobileaccountwidget.provider";
  public static final String BASE_CONTENT_URI = "content://";
}

and in manifest..
 <provider
        android:authorities="nz.org.winters.android.nzmobileaccountwidget.provider"
        android:exported="false"
        android:name="nz.org.winters.android.nzmobileaccountwidget.provider.AppContentProvider$Provider"/>

The $Provider class never gets created.
I have tried compiling with --debug e.t.c., but it doesnt give me an answer, Just that none of the classes that are generated by the apt plugin are able to be found. The provider is not created, appears to be the problem.

I just looked at the validator. I see I need to also create a end point, compiling before creating the end point will fail. The message didn't appear in the log.

It appears in the log, it's just buried deep down in the other "error" messages that says it fails to find the generated classes. There must be a nicer or cleaner way of passing true valid error messages, but since the apt plugin is a little hacky as the Android plugin doesn't support that step in the compile, it may not be fixable or improvable.
I guess the next step would be to make it clear in the usage docs that you must define at least one @TableEndpoint for the @ContentProvider to be valid.

fixed in docs


add two RD

Docs Build status updates of commit bbe007b:
:x: Validation status: errors
Please follow instructions here which may help to resolve issue.

File
Status
Preview URL
Details

rd/roger-pollini.yml
:x:Error

Details

rd/sharon-weaver.yml
:x:Error

Details

rd/index.yml
:warning:Warning

Details

rd/map.yml
:warning:Warning

Details

rd/toc.yml
:warning:Warning

Details

rd/roger-pollini.yml

Line 20, Column 3: [Error-yaml-syntax-error] While parsing a block collection, did not find expected '-' indicator.

rd/sharon-weaver.yml

Line 26, Column 3: [Error-yaml-syntax-error] While parsing a block collection, did not find expected '-' indicator.

rd/index.yml

Line 14, Column 8: [Warning-file-not-found] Invalid file link: './map'.
Line 16, Column 8: [Warning-file-not-found] Invalid file link: './about'.
Line 18, Column 8: [Warning-file-not-found] Invalid file link: './CodeOfConduct'.
Line 1411, Column 8: [Warning-xref-not-found] Cross reference not found: 'rd.roger-pollini'.
Line 1481, Column 8: [Warning-xref-not-found] Cross reference not found: 'rd.sharon-weaver'.

rd/map.yml

Line 15, Column 8: [Warning-file-not-found] Invalid file link: './map'.
Line 17, Column 8: [Warning-file-not-found] Invalid file link: './about'.
Line 19, Column 8: [Warning-file-not-found] Invalid file link: './CodeOfConduct'.
Line 1412, Column 8: [Warning-xref-not-found] Cross reference not found: 'rd.roger-pollini'.
Line 1482, Column 8: [Warning-xref-not-found] Cross reference not found: 'rd.sharon-weaver'.

rd/toc.yml

Line 287, Column 10: [Warning-xref-not-found] Cross reference not found: 'rd.roger-pollini'.
Line 301, Column 10: [Warning-xref-not-found] Cross reference not found: 'rd.sharon-weaver'.

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel

Docs Build status updates of commit f0d8b64:
:warning: Validation status: warnings

File
Status
Preview URL
Details

rd/index.yml
:warning:Warning

Details

rd/map.yml
:warning:Warning

Details

rd/media/profiles/roger-pollini.jpg
:white_check_mark:Succeeded

rd/media/profiles/sharon-weaver.jpg
:white_check_mark:Succeeded

rd/roger-pollini.yml
:white_check_mark:Succeeded

rd/sharon-weaver.yml
:white_check_mark:Succeeded

rd/toc.yml
:white_check_mark:Succeeded

rd/index.yml

Line 14, Column 8: [Warning-file-not-found] Invalid file link: './map'.
Line 16, Column 8: [Warning-file-not-found] Invalid file link: './about'.
Line 18, Column 8: [Warning-file-not-found] Invalid file link: './CodeOfConduct'.

rd/map.yml

Line 15, Column 8: [Warning-file-not-found] Invalid file link: './map'.
Line 17, Column 8: [Warning-file-not-found] Invalid file link: './about'.
Line 19, Column 8: [Warning-file-not-found] Invalid file link: './CodeOfConduct'.

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel


Basic server monitoring

📑 I have found these related issues/pull requests
None
🏷 Feature Request Type
New monitor, Other
🔖 Feature description
Would it be an idea .. to include some sort of server monitor in uptime-kuma?
This could perhaps be called a "heartbeat monitor", where the server u monitor has to send data to uptime kuma in stead of other way around. If the server can send data about itself, you're sure it's up and on plus you get to track system parameters.
The monitor itself would show and track the history of

% usage RAM
% usage CPU
% usage disk
usage network
and so on

This would make it able to add an alert, for example, if cpu usage is more than 90% for 5 minutes straight and so on.
In terms of showing this on the status page, it'd be nice to display it with a graph showing the current usage of all. eg like hetrixtools or Netweak
✔ Solution
There are several ways to monitor a server but the easiest way is via an agent. You install an agent script on the server you wanna monitor and it'll send data to - in this case - uptime kuma.
It's possible to get some inspiration from the open source agents of hetrixtools  or netweak
❓ Alternatives
No response
📝 Additional Context
No response

You can give https://github.com/louislam/uptime-kuma/issues/819 a thumps up ^^
=> closing as a duplicate


[Swag] Ship MP t-shirt to Burd

Your mpSwag was sent yesterday!
Let us know when you get it so that this ticket can be closed. :)

I have received Barry's swag and will give it to him. We can close this ticket.


[FEATURE]  Add Feedback/Rate Us page

I want to add a Feedback/Rate Us page.
@Vin205  PA please assign me this task.

@Vin205 @skmirajulislam

@Subhajit-2023-44 make sure it connects database

@Subhajit-2023-44 make sure it connects database

Of course it will link to the main page

@skmirajulislam should I add a feedback section to the footer instead of the feedback page?    Because it will look better for this website..

Hey I can work on this


display task tabs as siblings of item tabs

Fixes #717
Test link: https://dev.algorea.org/branch/feat/item-task-tabs/en/#/activities/by-id/8780689846455262402;path=4702,1625159049301502151;attempId=0/details
Test link with multiple view: https://dev.algorea.org/branch/feat/item-task-tabs/en/#/activities/by-id/9105453971757450756;path=4702,1625159049301502151;parentAttempId=0/details

It is a bit confusing to have the tabs ressetted when clicking on "progress". Couldn't you keep them ? And grey them out (all but the first) ... ok I can ask what is the expected behavior...

Fixed. What I did is:

When multiple views are available, hide content tabs and display task views in tabs instead. (Progress tab remains)
When one (or less) view is available, leave tabs as is.


Cache remote JSON schemas

This caches remote JSON schemas for repeated use. Closes https://github.com/stac-utils/stac-pydantic/issues/142.
The value 128 in @lru_cache(maxsize=128) is actually the default, so just added to be explicit that it's not an endless cache.

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

Project coverage is 96.02%. Comparing base (a927d25) to head (b7f22c3).
Report is 56 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #155      +/-   ##
==========================================
- Coverage   96.59%   96.02%   -0.57%
==========================================
  Files          25       25
  Lines         587      579       -8
==========================================
- Hits          567      556      -11
- Misses         20       23       +3

Flag
Coverage Δ

unittests
96.02% <100.00%> (-0.57%)
:arrow_down:

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

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

thanks @avbentem 🙏


Account template to add/delete user

Corresponds to API:

/cloudapi/accounts/addUser (make sure it's with the correct ACLs)
/cloudapi/accounts/deleteUser

Docs and tests must be included
part of #64

software version
master c5f6651