Merge multiple development APIM into a single shared APIM

Any suggestions for doing something like this?
We have multiple developer teams each working in their own development APIM, and we would like to offer a single shared APIM. This means that each team must only be allowed to deploy parts of their own APIM, and we must make an effort that no team can change other teams APIs and other settings in the shared APIM.

Hi @spaelling , is there a specific area where you need suggestions?

I figured that I will keep different folders for each seperate API management service, and then I will ensure that each resource has some unique prefix, or other way to differentiate.
I am using PR webhooks in Azure DevOps to validate each PR and make sure it does not violate anything that could overwrite existing APIs from a different API management service.
I was more wondering if you have had this request before. In my case each team wants their own API management service for development, but we cannot allow them to also have one in production due to costs.

@spaelling, I think the most pragmatic way would be to do as you've suggested: use pull requests and then review with a custom policy or manually.
This is a slippery slope with a lot of administration, but I'll mention it:
If you want to really lock things down, you could venture into the RBAC and permissions maze. Through the portal the roles and permissions are usually set on a higher level, such as on the entire APIM instance; do you want this person to have the role 'API Management Service Reader', 'API Management Service Contributor' or 'API Management Service Operator'. (You can create custom roles as well.)
However, since a resource is a resource you can set permissions on much lower level, such as products, apis etc. And you can scope these permissions on both users and service principals.
So you could for instance have multiple service principal/service connections in AzDO where each one is limited to the apis for that team. Different build/release pipelines which are triggered on the different teams check-ins using path filters. If a team attempts to deploy an api they are not allowed to, they will get a hard error since the service account they are using is not permitted to do so.
Example through the cli:
az role assignment create --assignee-object-id <aad object id> --role <role name> --scope <resource id>
az role assignment create --assignee-object-id 196b0696-9a3a-427d-b6e8-de6df38359c5 --role "API Management Service Contributor" --scope /subscriptions/c8d5716c-6865-4a90-bfb2-9919c3d2fd80/resourceGroups/my-shared-resourcegroup/providers/Microsoft.ApiManagement/service/my-shared-apim/apis/petstore-api

@spaelling, I think the most pragmatic way would be to do as you've suggested: use pull requests and then review with a custom policy or manually.
This is a slippery slope with a lot of administration, but I'll mention it:
If you want to really lock things down, you could venture into the RBAC and permissions maze. Through the portal the roles and permissions are usually set on a higher level, such as on the entire APIM instance; do you want this person to have the role 'API Management Service Reader', 'API Management Service Contributor' or 'API Management Service Operator'. (You can create custom roles as well.)
However, since a resource is a resource you can set permissions on much lower level, such as products, apis etc. And you can scope these permissions on both users and service principals.
So you could for instance have multiple service principal/service connections in AzDO where each one is limited to the apis for that team. Different build/release pipelines which are triggered on the different teams check-ins using path filters. If a team attempts to deploy an api they are not allowed to, they will get a hard error since the service account they are using is not permitted to do so.
Example through the cli:
az role assignment create --assignee-object-id <aad object id> --role <role name> --scope <resource id>
az role assignment create --assignee-object-id 196b0696-9a3a-427d-b6e8-de6df38359c5 --role "API Management Service Contributor" --scope /subscriptions/c8d5716c-6865-4a90-bfb2-9919c3d2fd80/resourceGroups/my-shared-resourcegroup/providers/Microsoft.ApiManagement/service/my-shared-apim/apis/petstore-api

Appreciate the suggestions. I did not consider using RBAC on each resource, but I am not sure if I would know resource Ids ahead of a PR or if the resources would change rapidly. But it could be an extra safety measure that the AzDO pipeline could only alter existing resources, and then some sort of approval flow for bringing new ones in. I will consider that.
Another thing I can use it for is to grant read access to relevant resources within the shared production APIM for each team, so they would not even be able to see each others APIs, etc.

We published the following document for discussing this scenario.
https://docs.microsoft.com/en-us/azure/architecture/example-scenario/devops/automated-api-deployments-apiops
Since there are no code changes involved here, I'll close this issue.

We published the following document for discussing this scenario.
https://docs.microsoft.com/en-us/azure/architecture/example-scenario/devops/automated-api-deployments-apiops
Since there are no code changes involved here, I'll close this issue.


To Lower case on account search

🗃 Github Issue Or Explanation for this PR. (What is it supposed to do and Why is needed)
#1429
✅ Checklist

[x] Github issue details are up to date for people to QA.
[x] I have tested all my changes.

🕵♂ Notes for Code Reviewer
Search doesnt work with upper case.
Fix, make user input lower case.
@buildc0de  Question: What if we create a user account with upper case "TestingSeeds". Will this fix still work?
Will the account be found now that we set the account to lower case?
🙈 Screenshots

👯♀ Paired with
Solo

@gguij004  added a fix to search too


Renumbering directories to match chapters

Renumber directories to match chapter names. Update root build.sbt references.

@bhanafee looks like there are some conflicts to be resolved here as well.

Reviewed the changes but there are some conflict.
--
Cheers,
Github: <Fe)))><
Twitter: <Fe)))><
/DKD
On Aug 23, 2017, 1:35 AM -0400, Brian Hanafee<EMAIL_ADDRESS>wrote:

Renumber directories to match chapter names. Update root build.sbt references.

Reply to this email directly, view it on GitHub, or mute the thread.

Can you elaborate on conflicts? It says "This branch has no conflicts with the base branch"

@bhanafee your IDE should show you the merge conflicts. Did you rebase against master before committing?

@bhanafee I will squash and merge instead.


Improve circuit compilation performance

This PR speeds up working with and compiling large circuits.
Here is a simple benchmark to test this:

Code
import tequila as tq
import random
from time import time

if __name__ == "__main__":
    random.seed(0)
    start = time()

    circuit = tq.QCircuit()
    for i in range(100):
        subcircuit = tq.QCircuit()
        for j in range(100):
            qubits = random.sample(range(10), 3)
            subcircuit += tq.gates.Toffoli(qubits[0], qubits[1], qubits[2])
            subcircuit += tq.gates.Ry(0.5, random.choice(range(10)))
        circuit += subcircuit

    daggered = circuit.dagger()
    circuit += daggered

    tq.simulate(circuit, backend="qulacs", optimize_circuit=False)

    print(f"Time: {time() - start:.3f} s")

Having optimize_circuit=False is necessary, without it the Qulacs optimization will take very long.
Before this pull request, the script took about 17 seconds on my machine.
The first change is to revert https://github.com/tequilahub/tequila/pull/360, because I didn't realize how big the performance impact of the deepcopy call here is.
I don't like removing this, but it reduces the runtime to around 10 seconds, and it seems like it was fine without the copy for years before I made that pull request.
I extended the warning message to explain the specific case that made me add the copy.
The second change is optimizing the replace_gates function, because it is currently implemented in an inefficient way that performs a lot of unnecessary copying. This change reduces the runtime of the script to about 3 seconds.
I also fixed a problem in the QubitWaveFunction length method where it also counted zeros, and added a function for BitString that returns the stored integer in a specified bit ordering.

Thanks!
Looks like it would make sense to think about a criterium to chose the default value of optimize_circuit


Adopt postgresql-fingerprint-storage-plugin and enable CD

Link to GitHub repository
https://github.com/jenkinsci/postgresql-fingerprint-storage-plugin
When modifying release permission
https://github.com/jenkinsci/postgresql-fingerprint-storage-plugin/pull/259
### Release permission checklist (for submitters)
- [x] The usernames of the users added to the "developers" section in the .yml file are the same the users use to log in to [accounts.jenkins.io](https://accounts.jenkins.io/).
- [x] All users added have logged in to [Artifactory](https://repo.jenkins-ci.org/) and [Jira](https://issues.jenkins.io/) once.
- [x] I have mentioned an [existing team member](https://github.com/orgs/jenkinsci/teams) of the plugin or component team to approve this request.

When enabling automated releases (cd: true)
Follow the documentation to ensure, your pull request is set up properly. Don't merge it yet.
In case of changes requested by the hosting team, an open PR facilitates future reviews, without derailing work across multiple PRs.
Link to the PR enabling CD in your plugin
https://github.com/jenkinsci/postgresql-fingerprint-storage-plugin/pull/259
### CD checklist (for submitters)
- [x] I have provided a link to the pull request in my plugin, which enables CD according to the documentation.

### Reviewer checklist
- [ ] Check that the `$pluginId Developers` team has `Admin` permissions while granting the access.
- [ ] In the case of plugin adoption, ensure that the Jenkins Jira default assignee is either removed or changed to the new maintainer.
- [ ] If security contacts are changed (this includes add/remove), ping the security officer (currently `@Wadeck`) in this pull request. If an email contact is changed, wait for approval from the security officer.

There are IRC Bot commands for it.

Posted on DEV list : https://groups.google.com/g/jenkinsci-dev/c/pLGnrqYK6cI

Ping @afalko @oleg-nenashev @mikecirioli @stellargo

+1 from me (though not a maintainer of the plugin, just a happy consumer of good pull requests from @jonesbusy )

+1 from me as well

Belated +1


Fixed: copy button positioning

PR Fixes:

1 Made the copy button's positioning better

Resolves #[482]
Checklist before requesting a review

[x] I have performed a self-review of my code
[x] I assure there is no similar/duplicate pull request regarding same issue

Before

After

the copy icon looks even bad in smaller code blocks

LGTM, small change unfortunately no bounty here.
Thank you for your contribution.


Propagate tensorflow convention to the closure expressions as needed.

This fixes https://bugs.swift.org/browse/SR-8487.

@swift-ci please test tensorflow

@swift-ci please test tensorflow Linux
@swift-ci please test tensorflow macOS

@swift-ci please test tensorflow Linux CPU

@swift-ci please test tensorflow Linux CPU

The macOS build machine is offline. @shahmishal Any idea why? https://ci-external.swift.org/computer/macOS-tensorflow/

@rxwei It ran out of space, going to send you an email with more detail.

@bgogul You can only run one trigger per comment message.

Thanks Mishal!
We shouldn't let macOS CI block merges until the disk space issue is fixed.


Moving the Edit/endre-button in the compact summary view

Description
In the summary view of a group the "Endre"-button is to the right of the title. This makes the reading order with a screen reader unlogical. You wouldn't want to change anything before you know what values you are trying to change.

If the Endre-button should be inside the box or underneath the box, I do not know, but it should come after the values of the fields in some way.
Additional Information
No response

Updated summary components will have the edit button to the right of the label for each component (i.e text field, text area etc). This is to align the edit buttons as much as possible to the right of the screen for increased readability.
The edit button should come after the input value for screen readers regardless of the visual placement of the edit button. We will take this into account as we implement the new components.


Look into swappable ArrayHashMap backend

Had a conversation with Dude the Builder on Ziggit - and he suggested to allow for ArrayHashMap to be a swapped backend.
Assuming the API is consistent this could be a drop in replacement.
NOTES:

Verified this is not a drop-in replacement, but it still shouldn't be too bad.
Let's get benchmarks bootstrapped before taking this on.

There's also this: https://ziglang.org/documentation/master/std/#src/std/static_string_map.zig
I dream of the day I can use sets at compile-time to setup tables that can be read at runtime.


Add Sound Mode Validator

In some situations it makes sense to check wether the sound mode in mame is enabled or disabled, e.g. when using SSF....

Added with 2.16.1


[Feature]:  Add Groq Ai support

前置阅读 | Pre-reading

[X] Issues
[X] README

服务类型 | Service Type
Official hosted service
系统信息 | System Information
Windows
Office 版本 | Office Version
office 2019 retail
功能请求 | Feature request
Please add support for grog ai to

https://groq.com/ this one?

yes, it api is free currently and limit are generous

where is the api doc?


[AKS] Fix for az aks approuting update command

This checklist is used to make sure that common guidelines for a pull request are followed.
Related command

az aks approuting update -g 'resource_group' -n 'cluster_name' --enable-kv --attach-kv 'keyvault_id'
General Guidelines

[x] Have you run azdev style <YOUR_EXT> locally? (pip install azdev required)
[x] Have you run python scripts/ci/test_index.py -q locally? (pip install wheel==0.30.0 required)

For new extensions:

[ ] My extension description/summary conforms to the Extension Summary Guidelines.

About Extension Publish
There is a pipeline to automatically build, upload and publish extension wheels.
Once your pull request is merged into main branch, a new pull request will be created to update src/index.json automatically.
You only need to update the version information in file setup.py and historical information in file HISTORY.rst in your PR but do not modify src/index.json.

AKS


[Question]

Question
How do I setup Mineflow with ScoreHUD
Plugin Version
No response

Duplicate of #107


proxy_disable_redirections

Why you need it?
In order to allow people to export data to their external webservice but not allowing any redirections so they can't probe my inner architecture ( their call replies are logged within my app )
How it could be?
proxy_disable_redirections yes
Other related information

I don't fully understand this requirement .
Could you give me some example and your use case?

stale so I'm closing , feel free to reopen it if you still have this requirement and pls provide more details


Password protected posts / pages form action issue

Today I have found a bug in the starter-theme/templates/single-password.twig. I was getting 502 on WP Engine for password-protected pages and posts. After some research, it turned out that WP Engine is appending an extra query string to the action URL. Currently, we have:
<form action="{{ site.site_url }}/wp-login.php?action=postpass" method="post">

I was able to fix it by adding this piece of code in my single.php and page.php:
$context['form_action'] = esc_url( site_url( 'wp-login.php?action=postpass', 'login_post' ) );

Doing it this way allows hooks to alter the URL.
The form action field looks like this:
<form action="{{ form_action }}" method="post">

I got the idea from this issue: https://toolset.com/forums/topic/password-protected-post-bug-with-wpengine/
What do you think would be the best way to handle this? Is it better to provide a globally accessible variable like site.password_proteced_url or just modify the single.php and page.php as well as the templates/single-password.twig. Or maybe you have another suggestion? Let me know and I'll create a pull request.

PR at https://github.com/timber/starter-theme/pull/118


feat!: create result.values with null prototype

Simple code change, with repercussions for tests and documentation.
  const result = {
    values: { __proto__: null }, // <------- null prototype
    positionals: []
  };

Closes: #108
Before I alter the 44 failing tests, is the right approach to explicitly create the reference result with null prototype too? (Oh, and I am running tape locally so better check what "real" assert does too! Edit: same.)
const expectedResult = { values: { __proto__: null, toString: true }, positionals: [] };
//                                 ^^^^^^^^^^^^^^^
const result = parseArgs({ args, options });
assert.deepStrictEqual(result, expectedResult);

(I saw in the docs that assert.deepEqual ignores the prototype in legacy mode, but it has other issues and is deprecated.)
ToDo:

fix failing tests
suggest documentation changes

Reference documentation: https://nodejs.org/api/querystring.html#querystringparsestr-sep-eq-options

The object returned by the querystring.parse() method does not prototypically inherit from the JavaScript Object. This means that typical Object methods such as obj.toString(), obj.hasOwnProperty(), and others are not defined and will not work.

Yes, but I am not assuming which lands first.

I'm on the fence about this one, do we want to take away object helper methods from users, for the benefit of having less confusing behavior around edge-cases like a key called "toString"? If someone has a need for this key name, couldn't they use hasOwnProperty to handle the edge case themselves?

Nobody uses object helper methods, precisely because of the risk of collision.

Nobody uses object helper methods, precisely because of the risk of collision.

Argument lands for me, if we want to go this route 👍

Nobody uses object helper methods, precisely because of the risk of collision.

This is a generalisation which is not true in my experience. I see lots of use of object helper methods. I can't know whether because of carefully reasoned balance of the convenience vs the theoretical risk, or dismissal of the risk, or ignorance.
To check my impression, I tried searched for "javascript hasownproperty" and opened the top four links. All were showing how to use the helper method. Some of the pages did also mention or demonstrate the possibility of hasownproperty being missing (e.g. null prototype) or overwritten and explain alternatives. (And this seems like the helper function mostly likely to go into the issues, given its purpose!)
Only one of the pages actually pointed away from using the helper function with a note at the top of the page:

Note: Object.hasOwn() is recommended over hasOwnProperty(), in browsers where it is supported.

One of the pages introduced an alternative in a small trailing section with :

It's highly unlikely that you will encounter such cases but it's good to be aware of the possibility.

Let's say you're right, and users will be confused by this.
So? The result is hopefully that they'll be educated on how the language works, and their code will be better as a result.
The alternative is that code using parseArgs has a CVE, or worse, is exploited without a CVE. Some amount of confusion from people who misunderstand the language seems far preferable to the likely potential for security exploits ("prototype pollution" CVEs are one of the most popular flavors of the last few years in the npm ecosystem, in my experience).

The alternative is that code using parseArgs has a CVE

I tend to agree, let's err on the side of caution. I really want to avoid having to cut a patch Node.js release for a sporius prototype pollution vulnerability.

The alternative

(That was a pretty loaded comparison, but the concerns are real.)

From an earlier discussion (https://github.com/pkgjs/parseargs/issues/32#issuecomment-1013914178)
@bcoe said:

I think we should create all our objects with null prototypes, Object.create(null).

and @ljharb replied:

That’s good, but isn’t sufficient to protect against prototype pollution because of the dunder proto setter on Object.prototype.

What's the issue here? Is { __proto__: null } different? Or was this that (Safe)Map is even safer, which was the other thing being discussed?

Yes, it's different. Using it syntactically in an object literal is grammar, and has nothing to do with the setter, which comes into play if someone does foo.__proto__ = bar (and not foo['__proto__'] = bar, i believe)

and not foo['__proto__'] = bar, i believe

The setter does also apply there. It's just a normal accessor on Object.prototype; it works like every other accessor.

Updated original comment with notes and crack at documentation. I didn't soak up the rest of the utils page for style.

Both the reviews were from when there was just one line of code, so bumped for re-review as much to make sure you were not misrepresented as to give you the opportunity!


Compiling tensorflow-lib for jetson nano not working.

I am trying to build tensorflow-lib.so for jetson nano
https://developer.nvidia.com/embedded/jetson-nano-developer-kit
This issue is a continuation on https://github.com/tensorflow/tensorflow/issues/44198
So I am trying to build the tensorflow library to use with the c api on jetson nano, I have a project that uses tensorflow r1.14 and I assume that I will need a r1.14 library with that, I can migrate to r1.15 if that would be easier since the r1.15 build gets further and from the issue #34429 it seems as if the compilation issue I am getting on r1.14 will not get fixed.
Jetson nano comes with aarch64, ubuntu 18.04, cuda 10.2 and cudnn 8.
Describe the problem
bazel build fails on tensorflow r1.15 with:
INFO: From Compiling external/snappy/snappy.cc [for host]:
cc1plus: warning: command line option '-Wno-implicit-function-declaration' is valid for C/ObjC but not for C++
ERROR: /home/jonasrsv/.cache/bazel/_bazel_jonasrsv/71718566c3609207e5a44599481f772c/external/nccl_archive/BUILD.bazel:72:1: undeclared inclusion(s) in rule '@nccl_archive//:nccl':
this rule is missing dependency declarations for the following files included by 'external/nccl_archive/src/channel.cc':
  'bazel-out/aarch64-opt/bin/external/nccl_archive/nccl.h'
Target //tensorflow/tools/lib_package:libtensorflow failed to build
Use --verbose_failures to see the command lines of failed build steps.
INFO: Elapsed time: 1299.618s, Critical Path: 130.78s
INFO: 1525 processes: 1525 local.
FAILED: Build did NOT complete successfully

bazel build fails on r1.14 with:
INFO: From Compiling external/highwayhash/highwayhash/sip_hash.cc:
In file included from external/highwayhash/highwayhash/arch_specific.h:39:0,
                 from external/highwayhash/highwayhash/sip_hash.h:23,
                 from external/highwayhash/highwayhash/sip_hash.cc:15:
external/highwayhash/highwayhash/state_helpers.h: In function 'void highwayhash::PaddedUpdate(highwayhash::HH_U64, const char*, highwayhash::HH_U64, State*)':
external/highwayhash/highwayhash/compiler_specific.h:52:46: warning: requested alignment 32 is larger than 16 [-Wattributes]
 #define HH_ALIGNAS(multiple) alignas(multiple)  // C++11
                                              ^
external/highwayhash/highwayhash/state_helpers.h:49:41: note: in expansion of macro 'HH_ALIGNAS'
   char final_packet[State::kPacketSize] HH_ALIGNAS(32) = {0};
                                         ^~~~~~~~~~
ERROR: /home/jonasrsv/.cache/bazel/_bazel_jonasrsv/71718566c3609207e5a44599481f772c/external/nccl_archive/BUILD.bazel:67:1: fatbinary external/nccl_archive/device_dlink_hdrs.fatbin failed (Exit 1)
fatbinary fatal   : Unknown option '-bin2c-path'
Target //tensorflow/tools/lib_package:libtensorflow failed to build
Use --verbose_failures to see the command lines of failed build steps.
INFO: Elapsed time: 1732.677s, Critical Path: 143.12s
INFO: 2101 processes: 2101 local.
FAILED: Build did NOT complete successfully

This error seems to be related to #34429
Provide the exact sequence of commands / steps that you executed before running into the problem
git clone https://github.com/tensorflow/tensorflow.git
cd tensorflow
git checkout r1.14
python3 configure.py

# Click yes on tensorRT and cudaNN

bazel build --config opt //tensorflow/tools/lib_package:libtensorflow

I noticed that saved_models produced by r1.14 can be loaded by libtensorflow-2.3.1 so I guess the saved_model format is backwards compatible, I will try to compile tf-2.3.1 on the jetson nano, and if that works we can ignore the older versions. Will update later today, just need to build a newer bazel version on the nano first.

Build fails on r2.3 with
INFO: From Compiling tensorflow/core/util/dump_graph.cc:
tensorflow/core/util/dump_graph.cc:169:8: warning: 'tensorflow::Status tensorflow::{anonymous}::WriteTextProtoToUniqueFile(const google::protobuf::MessageLite&, tensorflow::WritableFile*)' defined but not used [-Wunused-function]
 Status WriteTextProtoToUniqueFile(
        ^~~~~~~~~~~~~~~~~~~~~~~~~~
ERROR: /home/jonasrsv/friday-voice-assistant/local_repositories/tensorflow/tensorflow/cc/BUILD:629:22: Linking of rule '//tensorflow/cc:ops/functional_ops_gen_cc' failed (Exit 1): crosstool_wrapper_driver_is_not_gcc failed: error executing command external/local_config_cuda/crosstool/clang/bin/crosstool_wrapper_driver_is_not_gcc @bazel-out/aarch64-opt-exec-50AE0418/bin/tensorflow/cc/ops/functional_ops_gen_cc-2.params
bazel-out/aarch64-opt-exec-50AE0418/bin/_solib_local/_U_S_Stensorflow_Scc_Cops_Sfunctional_Uops_Ugen_Ucc___Utensorflow/libtensorflow_framework.so.2: undefined reference to `aws_checksums_do_cpu_id'
bazel-out/aarch64-opt-exec-50AE0418/bin/_solib_local/_U_S_Stensorflow_Scc_Cops_Sfunctional_Uops_Ugen_Ucc___Utensorflow/libtensorflow_framework.so.2: undefined reference to `aws_checksums_crc32c_hw'
collect2: error: ld returned 1 exit status
Target //tensorflow/tools/lib_package:libtensorflow failed to build
Use --verbose_failures to see the command lines of failed build steps.
INFO: Elapsed time: 1145.178s, Critical Path: 136.91s
INFO: 94 processes: 5 internal, 89 local.
FAILED: Build did NOT complete successfully

The error above was probably from issues caused by the fact that I restarted the compilation after the computer crashed because too much resources was used and I did not clear cache inbetween.
I re ran the build job over night with a cleaned cache using the bazel flag '--jobs=1' such that it didnt crash from exhausting resources. Now it instead crashes with this
ERROR: /home/jonasrsv/friday-voice-assistant/local_repositories/tensorflow/tensorflow/compiler/xla/service/cpu/BUILD:660:11: C++ compilation of rule '//tensorflow/compiler/xla/service/cpu:runtime_matmul' failed (Exit 4): crosstool_wrapper_driver_is_not_gcc failed: error executing command external/local_config_cuda/crosstool/clang/bin/crosstool_wrapper_driver_is_not_gcc -MD -MF bazel-out/aarch64-opt/bin/tensorflow/compiler/xla/service/cpu/_objs/runtime_matmul/runtime_matmul.pic.d ... (remaining 60 argument(s) skipped)
aarch64-linux-gnu-gcc-7: internal compiler error: Killed (program cc1plus)
Please submit a full bug report,
with preprocessed source if appropriate.
See <file:///usr/share/doc/gcc-7/README.Bugs> for instructions.
Target //tensorflow/tools/lib_package:libtensorflow failed to build
Use --verbose_failures to see the command lines of failed build steps.
INFO: Elapsed time: 14063.490s, Critical Path: 2100.73s
INFO: 8095 processes: 6355 internal, 1740 local.

Hi There,
We are checking to see if you still need help on this, as you are using an older version of tensorflow which is officially considered end of life . We recommend that you upgrade to the latest 2.x version and let us know if the issue still persists in newer versions. Please open a new issue for any help you need against 2.x, and we will get you the right help.
This issue will be closed automatically 7 days from now. If you still need help with this issue, please provide us with more information.

Hi, as you can see from my comment on Oct 22 I also tried with Tensorflow r2.3 which failed too. I haven't tried with 2.4 and probably won't in the near future, feel free to close this though. I'll open this one again whenever I get time to try the latest TF and if the problem persists :)


Library release removal request

Library name
MobaLedLib
Version to remove
3.2.0

Hi @Jueff. I am confirming your request.
Unlike submissions, this type of request is still handled manually. The Library Manager index maintainer occasionally comes through to clear all the outstanding requests. They will close this issue when it is done. You will get a notification from GitHub at that time.
After that, you can monitor the indexing of the library via its dedicated logs web page.
Information about that here:
https://github.com/arduino/library-registry/blob/main/FAQ.md#can-i-check-on-library-releases-being-added-to-library-manager

Done in:
2023/01/10 17:10:10 Loaded 5482 libraries from DB
Removing<EMAIL_ADDRESS>Success!


Core grooming

1.11 replacement for:
https://github.com/FriendsOfPHP/PHP-CS-Fixer/pull/1340/files

Thank you @SpacePossum.


Causing player selector in Minecraft command

Currently Minecraft supports several target selectors such as @p, @r, @a. I wonder if Sponge can add a new selector to target the cause of the command.
For example, if I put a button on a command block, and set the command block to /tp @c 100 100 100, the command block will teleport the exact player that pressed the button. At the moment, the best I can do is to set tp @p 100 100 100, which is quite problematic in crowded area.
If Sponge can really override the player target mechanism of Minecraft, the same @c may also be used with other plugins such as Command Sign.

Is it possible to implement this in a plugin?

An API that exposes Minecraft target resolution (for those new @x) would be great. However, since cause tracking is supported by Sponge, I think at least a cause target selector should be something built-in.

@kenzierocks It is within the realm of possibility, but I'm curious how it would be handled from the API standpoint. I'd imagine it would still be a special CommandElement, and @zml2008 did express some interest in such a thing. Implementation wise, it would be really simple with the CauseTracker system in place for both 1.8.9 and 1.10.2

I think on the API side, a new event or changing existing event might not be necessary. However, internal Sponge's resolution for player parameters (those that declared during command registration) can be changed to make use of this @c feature as well. Moreover, it would be great to add a function like resolveEntityTarget() which accepts those @ string.

The SelectorResolver does that, but it has a ton of bugs that need fixing (I have an open PR for this).

@nguyenquyhy I added support for that some time ago in SpongePowered/SpongeAPI#780, but it does use SelectorResolver, so it will be affected by any bugs in that (see kashike's comment).

@JBYoshi it seems the PR you referenced is closed. Is it merged somewhere else in Sponge?

It was rebased into the master branch in https://github.com/SpongePowered/SpongeAPI/commit/347605274bf3d3eae9ece79a3df7f23d26628ff8.

I don't really get it. So how can I target causing player now? E.g. a player clicks a button on a command block and how can the command block do /tell ... to that exact player?

I meant that added support for custom selectors in commands. It does not add support for a cause selector.

How would it works if there is a button and a complex redstone circuit with gate, ...?
I'm not sure it would be possible.

I too thought it wouldn't be possible at the start, then when the Sponge cause system was introduced I was pleasantly surprised.
At this stage it's just creating a selector that responds to causes, the cause system already exists, and works.

Yes that is why I give the suggestion. It seems to me that Sponge already has all neccessary facility to implement a cause selector (Selector resolver + Cause tracking). @c can become a new built-in selector for all commands that use selector resolver.

@advancid since the feature relies on cause tracker, it will have all limitation/ability of cause tracker.
I agree that this feature may not work accurately in complex redstone mechanics when the cause is not obvious. However, I think for most of the cases, the cause of an activation is quite obvious, and the lack of cause selector force server owner to employ complex mechanism to make sure they target the correct player. Moreover, with plugins, there is also fewer needs for server owners to build complex redstone mechanics for complex functions.

The only thing I don't necessarily agree with is using the prefix @ for Sponge-custom selectors, as it's more plausible that minecraft introducing additional selectors would also use the @ prefix.
It's a minor gripe, but I could see it being a future migration pain point if @c were ever to be used by minecraft itself.

Would it be too much of a pain to use @sponge:c, identifying like items and blocks do?

For me, @c or @sponge:c or anything else is ok as long as it is implemented.

Sponge is "A community-driven open source Minecraft modding platform.", I don't think this should be imlemented in Sponge it self but maybe in a plugin.

I believe Sponge already has all facility to implement the function. In my opinion, having a another plugin just to merge two built-in Sponge functions feel a bit overkill.
I am aware that there can be compatibility issue when Minecraft moves forward. That's why I really hope to hear from Sponge team to know if they will go ahead with the implementation or I should build something on my own. This has been here for more than 2 weeks already.

Is there any update on this?

I also would be interested in seeing this added to Sponge by API 5.

If this was implemented, I think it would not be in the API since it would make no sense, the API is for plugins.

@advancid It might be a useful default for some commands.
/tpto someplace (Teleport executor)
/tpto someplace @a (Teleport all)


Unselecting languanges in Post Languange selection is confusing.

Describe the bug
There are and will be a lot of bilingual and multilingual users coming to Bluesky so there will be users who enabled multiple languages in their post by default. However, there might moments where said user wants to only post in English, or other languages they are proficient in.
Unselecting languages in Post Selection leads to a weird behaviour where when the user clicks or taps on the checkmark next to the language name, instead of unselecting it, it will select said language as the post language
To Reproduce
Steps to reproduce the behavior:

Pick multiple languages in post-composer.
Try to unselect any languages by clicking the checkbox of said language.

Expected behavior
When the user unselects a language by clicking or tapping, it should unselect the language and not selecting the one they just clicked.

Screenshots

Details

Platform: Desktop Web (Microsoft Edge 115.0.1901.183)
Platform version: 1.41.0
App version: 1.41.0 (2) production

I have the same bug. It's really annoying (

+1, @estrattonbailey could you add to the preferences model a rolling history of languages used in this interface which is stored locally and sets the options?


x/crypto/salsa20: keystream loop in amd64 implementation after 256GiB

If more than 256 GiB of keystream is generated, or if the counter otherwise grows greater than 32 bits, the amd64 implementation will first generate incorrect output, and then cycle back to previously generated keystream. Repeated keystream bytes can lead to loss of confidentiality in encryption applications, or to predictability in CSPRNG applications.
The issue might affect uses of golang.org/x/crypto/nacl with extremely large messages.
Architectures other than amd64 and uses that generate less than 256 GiB of keystream for a single salsa20.XORKeyStream invocation are unaffected.
This issue was discovered and reported by Michael McLoughlin.

Do we have CVE or this is being treated as non-security bug ?

CVE has been assigned to this https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-11840.  Please make sure to get CVE for a security fix.


What about "~/ports-cvs/mybeautifulporttotest"?

I found it in the manual (EXAMPLES/test a single port):
 It starts the jail, then mount the ports tree (nullfs), then mounts the
 package dir (pourdriere/data/packages/<jailname>-<tree>-<setname>), then
 it mounts the ~/ports-cvs/mybeautifulporttotest (nullfs) it builds all
 the dependencies (except runtime ones) and log it to
 poudriere/data/logs/testport/jailname/default/mybeautifulporttotest.log).

I tried, but the ~/ports-cvs doesn't mount as the manual describe - and didn't find "ports-cvs" in source files.
Is it a bug in manual or am I missing something?

If I understand correctly, the relics of the old documents are no longer current.
I have prepared a patch
https://github.com/freebsd/poudriere/compare/master...f-andrey:master


PP: Protocol extensions

Protocol extensions
Protocol extensions allow the client and server to communicate additional features they support on top of the protocol. This is done in a similar way to v0.75, but instead of using specific bits, strings of text are used to identify features. Using strings instead of boolean bit flags removes confusion and the need to agree on extension IDs for all extensions. This is useful for modders who want to add functionality that is not supported by the protocol. This is similar to the /_matrix/client/versions endpoint in the Matrix protocol. It is also the inspiration for this method.
When the client connects, the server sends an array of feature flags that it supports. The server then expects the client to send back a subset of the array with the features that the client supports. The client must not send feature flags that are not in the array the server sends even if it supports more features. The server must not wait to receive a reply and start sending map chunks to the client immediately. However, the server must not let the client out of map loading into the game if it has not received the client's supported features. The server must have a reasonable timeout for the reply. When the timeout expires and no reply has been receive  it must kick the client.
Feature flags should be namespaced and may contain a version. They should only use numbers 0-9, English letters a-z, and characters . and -.
If a feature flag exists in the array sent by the client or server, the feature is supported by it. Unsupported features must not be sent. The feature flags array may be empty, indicating that no additional features are supported.
Packet strucure
This is not a complete packet, it should be integrated with a handshake packet in the future
+---------------------------------------------+
| 16-bit length for array (N)                 |
+---------------------------------------------+
| 8-bit length of feature flag                 | \
+---------------------------------------------+ | Repeated N times
| Length * UTF-8 character encoding the flag   | /
+---------------------------------------------+

This packet is sent from server to client and client to server. Feature flags are UTF-8 strings without BOM. Zero-length feature flags are not allowed and the packet must be treated as invalid if that is the case.
If the client or server receive an invalid packet, it must be interpreted as empty feature flags. Duplicate feature flags should be ignored. If the server receives a feature flag from the client that it does not support, i.e. it was not in the array it sent to the client, it must ignore the flag.

I completely do not  see a reason for this. Extensions in 0.75 were done to keep compatibility with the old clients in shitty and hacky way. This is a brand new protocol. Like seriously WHY.


docs

Hi,
Made the overview more verbose, to help show the benefits of using AGE, and added a link to the python driver. If you like these changes, I will keep working on the project.
Thanks for working on this important code.
Dan

Amazing Dancaron. Welcome.

typo in this commit: "intrustion" -> "intrusion" (if you get to it before my next PR).
Glad you find it worthy. I will send more updates soon.

Thank you, Dan!


feat: common patterns infrastructure (hex color)

Summary
First of the series of common patters: hex color.
This PR defined finder and validator variants for hex color pattern.
Note this feature will not be yet mentioned in the documentation to confirm that commonjs/esm import works as intended after release.
Test plan

Codecov Report
Attention: Patch coverage is 0% with 3 lines in your changes are missing coverage. Please review.

Project coverage is 98.21%. Comparing base (91663a7) to head (8406c49).

Files
Patch %
Lines

src/patterns/hex-color.ts
0.00%
3 Missing :warning:

Additional details and impacted files
@@             Coverage Diff             @@
##              main      #72      +/-   ##
===========================================
- Coverage   100.00%   98.21%   -1.79%
===========================================
  Files           14       15       +1
  Lines          165      168       +3
  Branches        39       39
===========================================
  Hits           165      165
- Misses           0        3       +3

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

Released in v1.4.0 🎉


KAFKA-3525; getSequenceId should return 1  for first data node creation

ZkUtils.getSequenceId() method is used to generate broker id sequence numbers. During startup, each broker updates the data at /brokers/seqid zk path and returns stat.getVersion as next sequence id.
stat.getVersion returns "1" for first data update. So ZkUtils.getSequenceId() should return "1" on first data update.

@ijuma pinging for review

@fpj can you please check this small PR?

@fpj   pl go through KAFKA-3525 JIRA discussion.

@fpj  I  removed some unnecessary code and i used makeSurePersistentPathExists(path) method call to  make sure zknode exists.

@omkreddy I've left a couple of comments, If you fix that, I'm good with the patch.
cc @ijuma

Thanks for your patience @omkreddy. Looks like we're close. Can you please add a test as well?

@ijuma @fpj   updated PR with required changes and added a simple test case

@ijuma thanks for your reviews. learning lot from your reviews.
Pl review latest update

Thank you @omkreddy, merged to trunk.


Create thecdm

@takaf51 Could you please:

provide us with a link to an IT-related long-term (>1 year) offered by your school described on your website, and
modify the file path to add your email domain to the repository, it has to be lib/domains/ca/thecdm.txt, .txt extension is mandatory.

If you do not have such a course, could you please explain what you would like to use JetBrains tools for?
Thank you!

@takaf51 Could you please answer my previous comment in order to proceed with adding the domain to this repository? Thank you!

Sorry for my slow response.

You can find information about master program this link. https://thecdm.ca/program/mdm
I did that.
Regards,
Taka

@takaf51 Pull request merged. To be honest, it is still not clear from https://thecdm.ca/program/mdm what exactly you can use JetBrains tools for, but formally the institution fits the requirements, thus I added it to the repository. Please email<EMAIL_ADDRESS>if you have any problems using the tools.


Idea: Backfill existing data with creation timestamp

This got me thinking if the mixin could auto-fill some timestamps for createdAt based on ObjectId ... exciting? see any merit? just ~meh?

Actually, I don't know if this will fly in your generic mixin which works for both sql and nosql but if at least only for mongo, where would be a good place to handle upserts for mongo with $currentDate and $setOnInsert so that folks don't have to worry about that stuff?

handle upserts for mongo in your mixin with $currentDate and $setOnInsert

💯 That might be a nice way to handle the upsert problem.  In the generic sense there's no easy way unless query the database for the values before completing the upsert, something that invalidates the value of an upsert.  However if those values were available without a query round trip and were the correct values to use I think it would make sense to create a shim.
I haven't done any investigation on this, so assuming those values are the right ones.  I would probably create the following structure.
db.js
db/mongodb.js

Where the db.js file does the detection of the currently used database and provides either the mono module or no-op functions for other currently unsupported dbs; likely passing it the Model.
The monogodb file would probably just have one method exported, something like lookup which takes the ctx.instance (I don't think ctx.data would work) and adds the proper fields that would allow for an upsert with validation.

I'm still digesting your input ... in the meantime this snapshot represents the simplest set of from/to changes to get it done in code if the mixin doesn't take care of it, hoping to apply it to the mixin somehow.


Stubs and mocks

Hi!
I would love to have the ability to be able to stub or mock any object in Should.js. I could implement this myself, but as I have limited time I would rather not waste it if no-one things stubs or mocks should be a part of Should.js at all. Before anyone says anything, yes I know I can use a third party framework like Sinon, but I'd rather this kind of functionality would be a part of the actual assert-framework than anything else.
Implementing this kind of functionality into Should allows us to automatically revert stubs when the test is done, without imposing additional syntax.
I was thinking having something like object.should.be.stubbed().should.return(42).if.called.with("id", "peterson");
which is basically three operations, stub the object, return value of 42 when called, only return already set return value if called with arguments "id" and "peterson". Then at the end of the test you might have a object.should.be.called.correctly() if it was actually called with arguments "id" and "peterson".
What do people think? Is this something people would want as a part of the Should framework, or as a standalone framework?

To me, this sounds way too verbose:
object.should.be.stubbed().should.return(42).if.called.with("id", "peterson");
Keeping them on separate lines using a specific mocking framework might be cleaner to me.


Installation of libresignage

Can't install Libresignage there is no step by step help
Hello All,  can any one help to install this libresignage software on my pc so that I could get start with it.
I have a windows 10 PC .
Thanks

Install docker. https://docs.docker.com/docker-for-windows/install/

Run
docker run \  -d \  -p 80:80 \  --mount source=ls_vol,target=/var/www/html/data \  eerotal/libresignage:latest


Test for 3 parameters in Router.prototype.execute

This test saves time by automatically failing pull requests that remove the third parameter (the "name" parameter) from Router.prototype.execute. This test also serves as documentation for why Router.prototype.execute has a third parameter, despite the third parameter not being used by default.
See https://github.com/jashkenas/backbone/pull/3973

I'll be for this if its implemented as a test that name is passed after a route change

I'm not sure how you would test that name gets passed into Backbone.prototype.execute since Backbone.prototype.execute doesn't use the name argument.
This is where execute is defined: https://github.com/jashkenas/backbone/blob/master/backbone.js#L1516

@bryanjenningz you can just hijack this suite https://github.com/jashkenas/backbone/blob/82d8ec840c88ef5740b3ff6a8a0757a3c15da733/test/router.js#L365 or copy paste and make a new suite with something testing name

I found a test that already checks to see if a non-default execute function gets passed the name argument, but it doesn't test if the default execute function has a name parameter. I guess I'm not sure how to test if the default execute function has a name parameter other than by using a regex to check if it's in the default execute function.
See https://github.com/jashkenas/backbone/blob/82d8ec840c88ef5740b3ff6a8a0757a3c15da733/test/router.js#L917

The existing test is sufficient, thanks though @bryanjenningz.
We leave unused params on several functions just to make it obvious for anyone extending core functionality that they will receive that extra data. I don't think we need to unit test it though, just our convention.


Code is still runing after close it

VSCode Version: 1.2.1
OS Version: Ubuntu 16.04

Steps to Reproduce:

open code use it as normal
close it and you have this  /usr/share/code/code ./terminalProcess still runing

I don't know if this is a problem but I guess this isn't normal!

sometimes process is just /usr/share/code/code

"Durmiendo" means "Sleeping" in english

Duplicate of #7527


Support containerd as the container runtime

Description
This PR enables working with containerd runtime by introducing an init container to pull images, the controller detects the runtime and configures orchest accordingly”
Fixes: #issue
Checklist

[ ] The documentation reflects the changes.
[x] The PR branch is set up to merge into dev instead of master.
[ ] I haven't introduced breaking changes that would disrupt existing jobs, i.e. backwards compatibility is maintained.
[x] In case I changed the dependencies in any requirements.in I have run pip-compile to update the corresponding requirements.txt.
[x] In case I changed one of the services' models.py I have performed the appropriate database migrations (refer to the DB migration docs).
[x] In case I changed code in the orchest-sdk I followed its release checklist.
[ ] In case I changed code in the orchest-cli I followed its release checklist.
[ ] The newly added docker-cli and containerd-cli need to be pushed to DockerHub on release. So they need to be added to the correct .github/workflow/... file.
[ ] add document about installing in microk8s

It is tested with microk8s and minikube with containerd. k3s will be tested

Not sure I agree with the deletion of the node agent:

Orchest loses the ability to delete images from the node
pre-pulling is still an important part of the UX imo, not only we pull env images but a bunch of other things

I guess part of the reason for this is the same reason behind the fact that we are using different images to interface with different CRIs? https://github.com/orchest/orchest/pull/1048#discussion_r901773195
Is the requirement for the cluster nodes to have a homogeneous runtime dictated by a lack of time (i.e. to keep scope down?) or a technical requirement?

Not sure I agree with the deletion of the node agent.

I agree, this has this downside, but if we want to use node-agent we need to have some mechanism to delay pod deployment, until node-agent informed us about pulling.

Is the requirement for the cluster nodes to have a homogeneous runtime dictated by a lack of time (i.e. to keep scope down?) or a technical requirement?

It is a technical requirement, we don't know on which node the pod will end up, so in not-homogeneous cluster, orchest does not know which image to use.

I agree, this has this downside, but if we want to use node-agent we need to have some mechanism to delay pod deployment, until node-agent informed us about pulling.

This would only affect the "puller" part of the node-agent, so I think we should at least retain the "deleter" part of it and aim to keep the puller part of it if possible. To be more precise, it only affects environment images and custom jupyter images (essentially all images that are pushed to the internal registry),  so other images that we are pre-pulling are not part of the issue and would still benefit from being pre-pulled.
I think we have two architectural issues/questions here to solve:

how do different container runtimes handle concurrent pull calls? AFAIK that's fine but I haven't been able to fine explicit docs about it for docker and/or containerd
now that we support contaienrd the node agent should cover that as well
this PR provides multiple images to interface with different container runtimes, what do we do with the node-agent? One image of the node agent for every container runtime?

Note that, assuming we keep the node-agent around, the new images introduced by this PR should be part of the set of images that the node puller and/or deleter considers.

Note that since users can create custom jupyter images that can be customized and that are pushed to the internal registry, so the same kind of pre-pull behaviour should take place (you should look into the sessions _core.py module AFAIR). Also the /orchest-images-to-pre-pull endpoint in namespace_ctl might need to be looked into (not sure)

Would jupyter kernels actually work? I think _get_kernel_pod_manifest in services/orchest-webserver/app/app/res/kernels/launch_kubernetes.py might need to be changed to include the init containers?

Another thing that might need looking into, user services allow you to use an environment image built in Orchest as a service, the logic happens at _get_user_service_deployment_service_manifest in services/orchest-api/app/app/core/sessions/_manifests.py. I guess we need to have init containers there are as well when the service image is an Orchest environment image.

Another thing I would like to mention is the path of the init container directories, e.g. services/tools/docker/. Can we find a name that fits what the tool is doing and then improve the directory structure? I think this might have benefits in the long run, e.g. services/tools/init-container-puller/docker/, etc., discussing it in this PR feels a bit off already since I keep coming up with (probably wrong) names for it. This would also affect how to refer to this particular tool in the codebase, i.e. RUNTIME_IMAGE

Some questions I have (in no particular order, but I figured the numbers could help to reference resp. question):
(1) I am not so sure about the deletion of the node-agent (pretty much what @fruttasecca mentioned in https://github.com/orchest/orchest/pull/1048#issuecomment-1160599091):

We need to keep deletion as otherwise all nodes in the cluster would slowly start to get a full disk due to the images.
Pre-pulling seems like a good idea still (to me) given that otherwise the init container would have to do the pulling, meaning that (from a UX standpoint) the user has to wait longer for e.g. a session to start.
"One image of the node agent for every container runtime?" (from https://github.com/orchest/orchest/pull/1048#issuecomment-1161386423 by @fruttasecca) -> I think we could use environment variables as well here (just like it is done for the orchest-api) that are added by the orchest-controller. I would rather have one bigger node-agent image that works for both container runtimes instead of having one for each. Given that it has a Python base, I don't think there is much gain anyways (in a relative sense).

(2) @nhaghighat You said in https://github.com/orchest/orchest/pull/1048#issuecomment-1160103387 that you tested microk8s. Did it work out of the box or did you have to use the newly added --socket-path CLI option? In case it did not work by default then I think we should add a section to the docs that explains how to run Orchest on microk8s.
(3) The newly added docker-cli and containerd-cli need to be pushed to DockerHub on release. So they need to be added to the correct .github/workflow/... file.

In https://github.com/orchest/orchest/pull/1048#discussion_r901955851 it was discussed that having one image for each would save their size. What size benefits are we talking about here? In case it is super minimal, then we might as well ship one slightly larger image as to not have to distinguish between container runtimes. We can just first try to pull using Docker, and if that does not exist, then we can try to pull using containerd.

(4) As mentioned in https://github.com/orchest/orchest/pull/1048#issuecomment-1161410010, we might want to change the path from services/tools/... to tools/.... I don't really see the docker-cli/containerd-cli containers as services (at least not in the same way as the orchest-api etc.)
(5) Indeed the init container needs to be added to more places:

jupyter-server (https://github.com/orchest/orchest/pull/1048#issuecomment-1161389561)
kernels (https://github.com/orchest/orchest/pull/1048#issuecomment-1161393286)
user services (https://github.com/orchest/orchest/pull/1048#issuecomment-1161396587)

how do different container runtimes handle concurrent pull calls? AFAIK that's fine but I haven't been able to find explicit docs about it for docker and/or containerd

@fruttasecca : You mean concurrent pull of different images or same image?

now that we support contaienrd the node agent should cover that as well

Pre-pulling seems like a good idea still (to me) given that otherwise the init container would have to do the pulling, meaning that (from a UX standpoint) the user has to wait longer for e.g. a session to start.

I also like the idea of pre-pulling, but I think at the moment it does not bring us much, most of our users have limited amount of nodes and the images will be pulled by the first step container, so the for the rest of the steps the image is probably already present on the node.
Also it fills all the nodes with the images that might not be needed at all.
For example in a 3 node cluster it pulls jupyter-eg and jupyter-server on all of them, but the pod is spawned in only one the nodes.

this PR provides multiple images to interface with different container runtimes, what do we do with the node-agent? One image of the node agent for every container runtime?

I would rather have one bigger node-agent image that works for both container runtimes instead of having one for each. Given that it has a Python base, I don't think there is much gain anyways (in a relative sense).

If we decide to keep node-agent that would also be my preference.

We need to keep deletion as otherwise all nodes in the cluster would slowly start to get a full disk due to the images.

I think we should at least retain the "deleter" part of it and aim to keep the puller part of it if possible

Kubelet has a functionality to remove unused, un-tagged images from the nodes, regularly.

In case it did not work by default then I think we should add a section to the docs that explains how to run Orchest on microk8s.

No, I have changed the OrchestCluster CRD, will add an example and a section to the doc about it.

We can just first try to pull using Docker, and if that does not exist, then we can try to pull using containerd. This would also solve the need to check for a homogeneous cluster

The image size will not grow that much if we have both in the same image.now it is like 50mb each, then it would be 100mb.
But it still does not solve deployment in not homogeneous cluster, we still need to detect the socket location beforehand and it is different for different container run-times.

@fruttasecca : You mean concurrent pull of different images or same image?

same, was thinking about race conditions etc.

I also like the idea of pre-pulling, but I think at the moment it does not bring us much, most of our users have limited amount of nodes and the images will be pulled by the first step container, so for the rest of the steps the image is probably already present on the node.

I don't feel very strongly about the need for a pre-puller like the current state of the node-agent, although I think it still brings a significant UX improvement on first use(s) and first impressions matter, although I don't have anything quantifiable. About pulling images where they are not needed, I get the sentiment but any multi node (serious) use of Orchest will eventually lead to all "types" of pods being scheduled on different nodes, so I am not sure we should consider this point very much.
Imo if we keep the node-agent, let's say, for deletion, (and thus implement/make it work with different container runtimes) the adjustments needed to bring the puller logic up to speed should be so minimal that it wouldn't make sense to renounce the UX improvement

I would rather have one bigger node-agent image that works for both container runtimes...
If we decide to keep node-agent that would also be my preference.

same :)

Kubelet has a functionality to remove unused, un-tagged images from the nodes, regularly.

I think it might help us in reducing complexity by offloading more logic to k8s, I've skimmed through the docs very quickly and I think it has some downsides:

it requires setting and/or changing the kubelet configuration, I am not sure we can do that on third-party clusters or what's the overhead to implement this on different flavours of k8s, and asking users to do that would get in the way of a "it just works" experience imo
as far as I could see it's controlled by a periodic check configured through --minimum-image-ttl-duration duration, which means that freeing space is not immediate and you end up having delays at random times due to the image being re-pulled, the latter is a minor point imo, especially if the logic that considers an image "unused" is smart (which I don't know tho)
thinking about the cloud, if we require users to have at least X free gigs before performing an update we know that the outdated images will be swiftly cleaned up after said update, a periodic check with a long period wouldn't give us that, and we would have to complicate the logic further to clean up unused images
generally speaking, and especially thinking about the cloud, freeing up space quickly might make a great difference when it comes to UX

So imo even if this kubelet functionality would have came up during the implementation/review of the node-deleter I am not sure we would have gone with that

Solving this problem now seems like a pre-mature optimization, most f the clusters are homogeneous.

Agree

I think the ultimate solution to solve all the mentioned issues is to eventually have our own scheduler.

I agree, or at least I agree on the fact that the current solution is not the final one, but when it comes to managing scope/roadmap/timelines I think this init container "hack" might be the right call in order to save time

I agree, or at least I agree on the fact that the current solution is not the final one, but when it comes to managing scope/roadmap/timelines I think this init container "hack" might be the right call in order to save time

agree, it was the right call.

it requires setting and/or changing the kubelet configuration

garbage collecting of images and containers is the default behavior of kubelet, so it is safe to assume users have not disabled it.

as far as I could see it's controlled by a periodic check configured through...

There are different ttl and threshold configurations which I think the default one is fine for us.

end up having delays at random times due to the image being re-pulled

This is true, but it can still happen with node-agent. imagine this scenario: kubelet deletes an image and then before node-agent pulls the image a pod is configured to run on that node.
For example there is image-gc-high-threshold which is triggered if the disk usage reaches the threshold (ofcourse it checks the disk usage periodically)
more information about it can be found here:
https://unofficial-kubernetes.readthedocs.io/en/latest/concepts/cluster-administration/kubelet-garbage-collection/

garbage collecting of images and containers is the default behavior of kubelet, so it is safe to assume users have not disabled it.

that's true, what I meant to say is that we are not in control of parameters so we risk being at the mercy of coincidence

There are different ttl and threshold configurations which I think the default one is fine for us.
This is true, but it can still happen with node-agent. imagine this scenario:

noted

that's true, what I meant to say is that we are not in control of parameters so we risk being at the mercy of coincidence

kubelet garbage collection is always there and it is working even when node-agent is deleting unused images. so we are always in an environment with un-controlled parameters, whether node-agent is there or not. by having node-agent we might decrease the chance of disk pressure in a very rare scenario. (and we might even increase the chance, because node-agent fills nodes with lot's of unused images)
I still don't get the benefit of having node-agent any more, but as @yannickperrenet mentioned I'll add the functionality to node-agent

But what about the use case of making sure space is cleaned up quickly or improved UX of pre-pulling? Given that the node is both a puller and a deleter, do you think both of those functionalities are now redundant?

Puller is indeed helps improving UX, but at the same time it fills up the nodes, and there are scnarios where kubelet deletes the image and then a pod get scheduled on this node.

That's true, but if we need to get those images deleted earlier we can do that with an agent we control

That is true, not sure if it will become a bottleneck or not, as in multi node cluster, k8s scheduler considers the disk space left on the nodes before scheduling the pods, so it chooses nodes with available disks.

Do you think it would make sense to encapsulate the creation/injection of the initContainer definition into a function to be DRY? Seems like the only thing that's really changing is the image

Coming back to the the new images, CONTAINER_RUNTIME_IMAGE is still confusing imo, the image actually contains a thin interaction layer with the runtime, so it should reflect that better

A better name could be CONTAINER_RUNTIME_CLI_IMAGE

A better name could be CONTAINER_RUNTIME_CLI_IMAGE

I thought the idea was to ship just one image? So merging the docker-cli and containerd-cli into one, alleviating the problem.

@yannickperrenet : You proposed it, but I guess we did not reach the consensus or did we?

Imo this could be a good idea, the controller wouldn't have to pass the image as a plus

Imo this could be a good idea, the controller wouldn't have to pass the image as a plus

Controller needs to detect the socket location any way and it determines the socket location based on the type, so it has to pass the sokcet location to puller, besides detecting container runtime is easy and robust.
on the other hand if we rely on first trying docker and if it failed, then try containerd, we increase the session start up couple of seconds, because the first try might waits for couple of second then times out and moves to the next container runtime.

on the other hand if we rely on first trying docker and if it failed, then try containerd, we increase the session start up couple of seconds

Given that there will only be one container runtime running at any giving time we might as well make both the pull commands in parallel. We know one will always fail but that is fine. Just an idea.
I just like simplicity of having one container (that we use as an init container) instead of having to maintain multiple (and having to decide which one to use). I don't have a strong preference, but think the simplicity of going with one container will pay of in the long run.

I didn't mean to get rid of any information passing from the controller to the orchest-api in favour of an approach that tries to interact with all runtimes.

Same here. I also like passing the information given that we already have it.

Same here. I also like passing the information given that we already have it.

I think the information should be passed because of things mentioned in my previous comment. since I don't see this as a long term solution I don't mind having two container. but will change it 1 container.

So regarding https://github.com/orchest/orchest/pull/1048#discussion_r909459902 on orchest update we are currently not updating any changes we make to third-parties? E.g. for new version X we make a change to the manifest of Argo (this has happened in the past where we added an environment variable, if I am not mistaken @fruttasecca), then this change won't actually be reflected when an existing user updates/upgrades to version X? That is not acceptable imo, but since it is not introduced in this PR I am happy to have it fixed in another PR.
Thus, for the time being, I guess we should not make changes to third-party helm charts as existing users won't get the update. Luckily adding this functionality to the orchest-controller should not be a breaking change.

then this change won't actually be reflected when an existing user updates/upgrades to version X

That is true, this change is not reflected on existing users

That is not acceptable imo

I agree, but that requires detecting changes of the thrird-parties, which is not that easy, as we use in container values file for that


Fix overlapping instances

Recent versions of aeson provide instances that overlap with the custom [ExternalID] instances. This PR makes the custom ones overlap.

hmm - the spotify api now requires authentication, so this isn't enough to get it working.


Migrate config.Datadog from global to function

/!\ Most of the edit in this PR were automatically done by gopath (1344 insertions(+), 1356 deletions(-)) /!\

What does this PR do?
This PR removes the double global for the configuration in pkg/config.Datadog and pkg/config/setup.Datadog in favor of a function.
This PR is best review commit by commit. The automated changes from gopatch are contained in the third commit with no manual changes which should not require review.
Motivation
This is the first step toward preventing a race condition accessing the config before initialization was possible. This also pave the way toward a complete migration of pkg/config to component.
Finally, this removes the last blocker for the creation of a dedicated package for pkg/config/mock.go.
Describe how to test/QA your changes
Sanity check would be enough (running on staging and QA env),

/merge


[Bot Deployment] Why is session.send not working on deployed bot in Azure? But works on emulator.

Hi,
I am new to Azure deployment. Had tried to run thru pro-active message app. It works at emulator. session.send api is not working on deployed bot. I am not getting response back. Though it shows on console log there. Is there anything i am missing to done during deployment or in application ? Please help.
node JS and npm are on latest version at my machine i.e. 6.11.1 and 3.10.x . where as azure editor have 6.9.x and 3.9.x. Is this something to look at ?
I am simply trying to get response of it too but no success.
bot.dialog('/', function (session, args) {
session.send("ping me");
});

Hi @yogeshchandra01 - It's hard to diagnose the problem without the full bot code.  Can you post your complete bot code for reference?

closing as no reply from user -- reopen if you're still having issues


Enhancements and Feature Integrations: Dynamic Org Details, Maps, Sub-Orgs, Sub-Projects, Error Template

Hello dear colleagues,
I'm writing to request a code review and merge for the following enhancements and feature integrations:
Dynamic Organization Details Page: I have added a dynamic details page for organizations. Now, you can view comprehensive information about organizations, including projects, sub-organizations, graphical maps, and general error template details.
Map Services Integration: I have integrated map services to display the location of the organization. This addition enhances the user experience by providing geographical context.
Sub-Organizations Integration: The dynamic organization-details page now includes information about sub-organizations. You can easily explore the hierarchy of related organizations.
Sub-Projects Integration: Similarly, sub-projects have been integrated into the dynamic organization-details page. This feature allows us to display a list of relevant projects associated with the organization.
General Error Page Template: A general error page template has been added to improve the error-handling process, ensuring a more user-friendly experience in case of unexpected issues.
Please review the code, functionality, and user experience to ensure that everything aligns with our project goals.
Thank you,

I want to close the existing one and create a new pull request to incorporate the recent changes. I'm unable to open a second pull request while there is already an open one from the same branch.


[#3167] Enum optimization

Reduce Memory footprint
Remove Array copy of enum.values()

Codecov Report

Merging #3168 into master will decrease coverage by 0.01%.
The diff coverage is 72.16%.

@@            Coverage Diff             @@
##           master    #3168      +/-   ##
==========================================
- Coverage   38.92%   38.91%   -0.02%
==========================================
  Files        2017     2017
  Lines       66646    66683      +37
  Branches     9273     9274       +1
==========================================
+ Hits        25945    25948       +3
- Misses      38126    38156      +30
- Partials     2575     2579       +4

Impacted Files
Coverage Δ

...corp/pinpoint/common/server/bo/MethodTypeEnum.java
0% <0%> (ø)
:arrow_up:

...navercorp/pinpoint/plugin/thrift/ThriftHeader.java
0% <0%> (ø)
:arrow_up:

...pinpoint/web/vo/timeline/inspector/AgentState.java
69.23% <0%> (ø)
:arrow_up:

...navercorp/pinpoint/rpc/common/SocketStateCode.java
85.36% <100%> (+1.61%)
:arrow_up:

...rp/pinpoint/rpc/stream/StreamChannelStateCode.java
100% <100%> (+12.5%)
:arrow_up:

...oint/web/websocket/ActiveThreadCountErrorType.java
73.07% <100%> (+6.41%)
:arrow_up:

...stat/strategy/UnsignedIntegerEncodingStrategy.java
97.33% <100%> (ø)
:arrow_up:

.../pinpoint/common/server/bo/stat/AgentStatType.java
50% <100%> (ø)
:arrow_up:

...navercorp/pinpoint/common/server/bo/JvmGcType.java
88.88% <100%> (ø)
:arrow_up:

...c/stat/strategy/UnsignedShortEncodingStrategy.java
96.22% <100%> (ø)
:arrow_up:

... and 32 more

Continue to review full report at Codecov.

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


Don't follow symlinks

I created a symlink to a build folder for convenience but standard emit an error.

You can ignore your build folder by following the instructions in the documentation: https://standardjs.com/#how-do-i-ignore-files


Switch to using sequence for updating tags

no issue

makes upgrading very large numbers of posts & tags more reliable

Just for clarity and search-ability, this resolves an issue with Ghost 0.7 where starting Ghost after an upgrade on MySql/MariaDB gives the following error:

ERROR: ER_LOCK_DEADLOCK: Deadlock found when trying to get lock; try restarting transaction

Applying the patch in this PR will fix that issue & allow Ghost to complete the migration & start.


refactor Metadata._get_role_and_keys()

EDIT: This relates to code in #2165 -- should likely be fixed in that PR
Looking at Metadata._get_role_and_keys() after a while... I did not do a good job of it.
Potential improvement:

it should return only the keys for the delegated role (instead of all delegated keys and the specific Role). I was probably avoiding unnecessary allocations here but this makes the code harder to read
does not have to return the whole role  but does have to return threshold instead
the method should be public as it's useful in applications as well
these changes mean some changes in verify_delegate()

Something like this
    def get_keys_and_threshold(self, delegated_role: str) -> Tuple[List[Key], int]:

FYI, I also changed this method in https://github.com/theupdateframework/python-tuf/pull/2246/ to get keys and threshold  from an explicitly passed Signed object instead of self.signed.
I needed this for a common abstraction of Metadata and Envelope (dsse) classes, which accesses self.signed via getter method, that, in the case of Envelope, takes an optional (deserialization) argument.

That leads to the conclusion that metadata is the wrong location to begin with? I think I might agree with that: Targets and Root objects could both implement a method with the same signature

I just tried this and it looks a lot simpler: will fix this in the no-key branch/PR

closing: this is reviewed as part of #2165


add branch titus for autosync

Pull Request
Title

Type of Change

[x] New feature
[ ] Bug fix
[ ] Documentation Update
[ ] Refactoring
[ ] Hotfix
[ ] Security patch
[ ] UI/UX improvement

Description

Testing

Impact

Issue related to PR

Resolves #

Additional Information

Checklist

[ ] My code adheres to the coding and style guidelines of the project.
[ ] I have performed a self-review of my own code.
[ ] I have commented my code, particularly in hard-to-understand areas.
[ ] I have made corresponding changes to the documentation.
[ ] My changes generate no errors/warnings/merge conflicts.

add branch titus for autosync

merge titus


While building on Gentoo, wine-tkg-git runs with no errors but nothing is built.

Last line is "exit clean done" by the way.

This is my prepare.log also.
Cloning into bare repository 'wine-mirror-git'...
<EMAIL_ADDRESS>Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.
Cloning into bare repository 'wine-staging-git'...
<EMAIL_ADDRESS>Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.
./non-makepkg-build.sh: line 128: cd: /home/anikc/Applications/Grapejuice/wine-tkg-git/wine-tkg-git/wine-staging-git: No such file or directory

Seems like the git protocol is blocked on you're network or you don't have the correct file permissions here, Or maybe it's the public key?, Also this is not a problem related to the build guide, Please go make an issue at https://github.com/Frogging-Family/wine-tkg-git

...
Many apologies. I'll send this issue over there.
Also, in case anyone's wondering, you can try to change the protocol from https:// to git:// if needed. That's what solved this particular issue for me. Even then, I still got some errors.
Thank you @karimrir1, and many apologies once again.


Rename package filters.session to hooks (or plug-ins)

filters.session are no traditional filters but more something like hooks or plug-ins.
Rename to hooks and make sure for every hook-implementation there is also an interface so that later on, the hook-implementation can be instantiated based on configuration.

Done as part of the spring cloud gateway move


String Base 64

Is there a way to parse a file that was get via event.target.files[0], type string (Base 64) ? When I try to parse let dxf = parser.parseSync(this.state.data); I receive an error: Empty File in the function _parse (node_modules/dxf-parser/lib/DxfParser.js).
Example of string:

You can use atob() to convert the base64 back to text. Sample.


Border Around Select Caret in IE

I also opened the same issue in the twbs/bootstrap and submitted a pull request: https://github.com/twbs/bootstrap/issues/16527

Will create a pull request for this repo as well.

Closing in favor of https://github.com/twbs/bootstrap/issues/16527
A pull request in this repo should not be necessary, as the conversion script pulls in upstream changes from twbs/bootstrap automatically.


4.21

QUESTION 21
Your network contains an Active Directory forest. The forest contains 5,000 user accounts. Your
company plans to migrate all network resources to Azure and to decommission the on-premises
data center.
You need to recommend a solution to minimize the impact on users after the planned migration.
What should you recommend?
A. Implement Azure Multi-Factor Authentication (MFA)
B. Sync all the Active Directory user accounts to Azure Active Directory (Azure AD)
C. Instruct all users to change their password
D. Create a guest user account in Azure Active Directory (Azure AD) for each user

B


Camera preview not working as fullscreen in Nexus 6P with Nougat OS

I have raised this issue here in this thread: #85
But as it is suggested to start new thread, I have created this one.
@ataulm @rajeshct
I want you to participate in this and help me to resolved this issue.
The issue is that, I am not able to see the preview in Nexus 6P with Nougat OS (Here I want to see the preview in full screen only).
Earlier I have made my camera layout as follow to make it full screen:
<include
        layout="@layout/include_camera"
        android:layout_width="match_parent"
        android:layout_height="match_parent"/>

With this, it was working fine in all the device except Nexus 6p with Nougat OS. After that, I have updated the library and check for the issue. Here the Issue is get resolved but I need to make camera layout as per below code and also need to add AspectRatio to the Camera preview to display in that ratio.
<include
        layout="@layout/include_camera"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"/>

Now, If I make it to match_parent in height then It will stop showing preview in any device (Not only 6P with Nougat OS). And If I make it wrap_content then, it will show preview, but not in full screen but with the aspect ration of the screen.
So, here I want to have the full-screen preview of the Camera which was working nicely in old devices (Lower then 6p and Nougat OS).
I hope you understand the issue I am facing with the update of the library.
Please help me to resolved this issue.

@rajeshct @ataulm
I need any input or solution for this queries.
Please need help.
Sincerely,
Shreyash

@ShreyashPromact I am confused by the following

I need to make camera layout as per below code and also need to add AspectRatio to the Camera preview to display in that ratio.
<include
   layout="@layout/include_camera"
   android:layout_width="match_parent"
   android:layout_height="wrap_content" />

...
So, here I want to have the full-screen preview of the Camera

Do you want it full screen or wrap content to conform to a specific aspect ratio?

@ataulm
I want to display it in full screen. I know match_parent is the key solution for that. But If I keep it like that, Camera View is not working in Nexus 6P device with Nougat OS while same code working in Motorola's device.
Sincerely,
Shreyash

I don't have a 6p so I can't debug this issue, sorry.

Can anyone help me to resolved this issue?
This issue is only in Nexus6p device with Nougat OS.
Sincerely,
Shreyash

Ok I will check this in emulator because I didn't have nexus
On Mon, Feb 20, 2017 at 9:47 AM, Shreyash Mahajan<EMAIL_ADDRESS>wrote:

Can anyone help me to resolved this issue?
This issue is only in Nexus6p device with Nougat OS.
Sincerely,
Shreyash
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/google/cameraview/issues/98#issuecomment-280984483,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AFtBu4YvVcmfYggfBBbj3j5--LGBLaojks5reRPbgaJpZM4L2ATi
.

@rajeshct
Thanks a lot.

@rajeshct
It might not possible to check in emulator, especially for Camera. Can you please check it in real device to get from any other and update this.
Thanks.
Sincerely,
Shreyash

@rajeshct
I am getting lots of update regarding this project. but not getting any updates for this raised issue. Please can anyone look into this issue and update it. Please assign this to any developer to check it and resolved it.
Sincerely,
Shreyash

The issue is resolved.


OSError: Incorrect path_or_model_id: 'xtuner/llava-internlm2-20b/projector'. Please provide either the path to a local folder or the repo_id of a model on the Hub.

torchrun --nproc-per-node=8 --nnodes=1 --node_rank=0 --master_addr 10.255.xxx.xxx --master_port 8109 run.py --data LLaVABench --model llava-internlm2-20b --verbose
But I met the following problem below:
Traceback (most recent call last):
File "/train-xxx/code/xxx/src/test_scripts/test.py", line 6, in
projector = AutoModel.from_pretrained(projector_path,
File "/usr/local/lib/python3.10/dist-packages/transformers/models/auto/auto_factory.py", line 484, in from_pretrained
resolved_config_file = cached_file(
File "/usr/local/lib/python3.10/dist-packages/transformers/utils/hub.py", line 462, in cached_file
raise EnvironmentError(
OSError: Incorrect path_or_model_id: 'xtuner/llava-internlm2-20b/projector'. Please provide either the path to a local folder or the repo_id of a model on the Hub.
I also used the following script to have a test but got the same error by my side.
import os.path as osp
import torch
from transformers import AutoModel

projector_path="xtuner/llava-internlm2-20b/projector"
projector = AutoModel.from_pretrained(projector_path,
                                              trust_remote_code=True,
                                              torch_dtype=torch.float16,
                                              device_map='cpu')

Hi, @starlitsky2010 ，
Would you please paste the full error traceback here, seems I can not find codes related to VLMEvalKit here in your traceback.

Feel free to re-open the issue for any further updates.


--detect parameter needs an explanation

What's the meaning of the --detect : Automatically detect organization.? Detect what organization if I already assigned --org parameter?

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

ID: aab2fe90-f88d-c86a-5b6e-6279e16c55e0
Version Independent ID: fb392ab5-bee0-c717-ed31-6b7902d46296
Content: az devops user
Content Source: latest/docs-ref-autogen/devops/user.yml
GitHub Login: @rloutlaw
Microsoft Alias: routlaw

route to service team

@narula0781, @ashishonce, @romil07 Any news?


No changelog

A new major version was introduced in September 2021, yet there is no migration guide nor changelog to help migrate to the new version. I could not find that information either in the API reference : https://developers.hellosign.com/

I ran into the same thing. Support was unable to give me much information. @michelbl

Hey there! I published this change last year. Although it was technically a major version upgrade, the APIs should be identical to v1. We were forced to do a major version upgrade because the change we introduced removed bluebird as a dependency and instead used native promises instead. This would have technically broken the integration for users running very old versions of Node, and because of that, following semantic versioning requires us to publish as a new major version.
I apologize if this was not clear. We did not see a reason to introduce an upgrade guide, because, simply, there were no API changes. If it's alright, I'm going to close this ticket, as I believe this comment should resolve all future issues and should serve as an explanation to others with similar questions. But feel free to let me know if you think I should re-open


  That may resolve your problem.

Hi Paul,
Thank you for your response. Is it possible to mentioned dependencies in
BuildConfig or I have to compile it manually and reference it later on?
Regards,
Balkrishna Pandey
On Fri, Aug 7, 2015 at 6:36 PM, Paul Waldo<EMAIL_ADDRESS>wrote:

@pandeybk https://github.com/pandeybk you might try my branch at
https://github.com/PaulWaldo/rendering/tree/feature/upgradeDependencies
I have upgraded to flying-saucer-pdf-itext5:9.0.7. That may resolve your
problem.
—
Reply to this email directly or view it on GitHub
https://github.com/gpc/rendering/issues/24#issuecomment-128692147.

Hi @pandeybk, here is what you do:

Checkout the branch
Run grails maven-install to publish locally
Switch to your own project
Ensure mavenLocal() is in the repositories closure in BuildConfig.groovy
Add compile ":rendering:1.0.2-SNAPSHOT" to the plugins section of BuildConfig.groovy

That should pull in the updated plugin for your project.

Hi @PaulWaldo,
I followed the steps, here comes new issue, when I run grails maven-install to publish locally first of all I received following message,

| Script 'MavenInstall' not found, did you mean:
   1) UninstallPlugin
   2) InstallPlugin
   3) InstallDependency
   4) InstallJQuery
   5) InstallTemplates

I made little bit modification in code, removed export = false portion from BuildConfig.groovy as per the suggestion in stackoverflow (http://stackoverflow.com/questions/18056918/trouble-installing-using-grails-release-plugin-2-2-1).
Now I am finally receiving following compilation error.

| Error Compilation error: startup failed:
/home/bkpandey/workspace/github/opensource/rendering/grails-app/controllers/RenderingController.groovy: -1: Repetitive method name/signature for method 'java.lang.Object withFormat(groovy.lang.Closure)' in class 'RenderingController'.
 @ line -1, column -1.
/home/bkpandey/workspace/github/opensource/rendering/grails-app/controllers/RenderingController.groovy: -1: Repetitive method name/signature for method 'java.lang.Object withFormat(groovy.lang.Closure)' in class 'RenderingController'.
 @ line -1, column -1.
2 errors

@pandeybk, I'm wondering if it is a grails or groovy version problem.  Here is my build transcript:

[~/src/grails/rendering (feature/upgradeDependencies) ]
paul-> cat application.properties
app.grails.version=2.3.8
app.name=grails-rendering
[~/src/grails/rendering (feature/upgradeDependencies) ]
paul-> gvm use grails 2.3.8
Using grails version 2.3.8 in this shell.
[~/src/grails/rendering (feature/upgradeDependencies) ]
paul-> groovy -version
Groovy Version: 2.3.6 JVM: 1.7.0_67 Vendor: Oracle Corporation OS: Mac OS X
[~/src/grails/rendering (feature/upgradeDependencies) ]
| Plugin packaged grails-rendering-1.0.2-SNAPSHOT.zip
| POM generated: /Users/paul/src/grails/rendering/target/pom.xml...
Maven install complete.

@PaulWaldo
Thank you for pointing to right direction actually it was JDK version. I was using 1.8 and correcting it to 1.7 solve the issue.
But this branch again throwing the same initial error message. I just checked whether my application uses correct branch. Here comes excerpt of dependency-report
+--- org.grails.plugins:rendering:1.0.2-SNAPSHOT
|    \--- org.xhtmlrenderer:flying-saucer-pdf-itext5:9.0.7
|         \--- com.itextpdf:itextpdf:5.3.0
|         \--- org.xhtmlrenderer:flying-saucer-core:9.0.7
|    \--- com.lowagie:itext:2.1.0
|         \--- bouncycastle:bcmail-jdk14:136
|         \--- bouncycastle:bcprov-jdk14:136

@pandeybk it sounds like you are still using Java 8.  What are your values for java -version as well as environment variable JAVA_HOME?  Grails looks to JAVA_HOME, not the PATH, so I'll bet that is where you still have the pointer to Java 8.

Currently I am using Intellij and here is configuration, So I think this is not related to JAVA_HOME and PATH variable.

/usr/lib/jvm/java-7-openjdk-amd64/bin/java -Dgrails.home=/opt/grails/grails-2.5.0 -Dbase.dir=/home/bkpandey/workspace/wheeloflife -Dtools.jar=/usr/lib/jvm/java-7-openjdk-amd64/lib/tools.jar -Dgroovy.starter.conf=/opt/grails/grails-2.5.0/conf/groovy-starter.conf -Xmx768M -Xms768M -XX:MaxPermSize=256m -XX:PermSize=256m -javaagent:/opt/grails/grails-2.5.0/lib/org.springframework/springloaded/jars/springloaded-1.2.3.RELEASE.jar -noverify -Dspringloaded=profile=grails -Dfile.encoding=UTF-8 -classpath /opt/grails/grails-2.5.0/lib/org.codehaus.groovy/groovy-all/jars/groovy-all-2.4.3.jar:/opt/grails/grails-2.5.0/dist/grails-bootstrap-2.5.0.jar org.codehaus.groovy.grails.cli.support.GrailsStarter --main org.codehaus.groovy.grails.cli.GrailsScriptRunner --conf /opt/grails/grails-2.5.0/conf/groovy-starter.conf "run-app -plain-output"

@pandeybk I'm not an Intellij user, so I'm scratching my head there :-)  I do know that grails will use the value of JAVA_HOME when it does its magic.  See http://grails.github.io/grails-doc/2.5.0/guide/gettingStarted.html.  I was able to recreate your problem on the command line just by switching my JAVA_HOME to Java 8.  I assume you are using Linux:  can you show me the output of
echo $JAVA_HOME
from the command line?  It will look something like this:

[~/src/grails/rendering (feature/upgradeDependencies) ]
paul-> echo $JAVA_HOME
/Library/Java/JavaVirtualMachines/jdk1.7.0_67.jdk/Contents/Home

Ok, now I running application through command line only. Here is my  echo $JAVA_HOME  output.
/usr/lib/jvm/jdk1.7.0_79

Still no progress and same error output.
Also if you look at my first post, I mentioned that the same code base works with grails version 2.2.4.  Problem is only identified in 2.5.0 only.   I'm not familiar with the guts of the plugin to be of much help.  One thing you can try is setting debug mode for the plugin
			debug  'grails.app.services.grails.plugin.rendering'
I found this to be helpful in seeing the XHTML from the GSP.  You can then copy that XHTML into one of the many web validators to see if it is well-formed.

@PaulWaldo thank you for the support and effort. I will let you know if I found any solution. Currently I implemented pdfbox as my PDF generation service.
Thank you again.

I have the same problem on Grails 2.5.1 and Rendering 1.0.0. Exact same code on Grails 2.3.11 worked fine.

This is what i used in my Grails 2.4.3 app.
BuildConfig:
    // inherit Grails' default dependencies
    inherits("global") {
        // specify dependency exclusions here; for example, uncomment this to disable ehcache:
        // excludes 'ehcache'
        excludes 'commons-io', 'core-renderer', 'itext', 'org.grails:grails-docs'
    }

// more config...

dependencies {
        compile 'org.xhtmlrenderer:flying-saucer-core:9.0.7'
        compile 'org.xhtmlrenderer:flying-saucer-pdf:9.0.7'
        compile 'com.lowagie:itext:2.1.7'

// more config...

I tried your config settings and still get the same issue.

Found the solution to getting it to work on Grails 2.5.1, just add this dependency in your buildConfig:
dependencies {
runtime 'org.springframework:spring-test:4.1.6.RELEASE'
}

Thanks @zaccak that works :+1:


[patch] Lexer for Erlang

(Original issue 284 created by None on 2007-08-19T16:16:07+00:00)
Attached is a patch to functional.py to add support for Erlang. I haven't added any tests for it (yet) but it lexes the whole of the ejabberd tree with no errors.
The _mapping.py that is in trunk at rev 3880 seems to be different from what's in the various lexer files, so I haven't patched that.
--jerith
Reported by guest

(Original issue was assigned to gbrandl)
(Original issue 284 last updated on 2007-09-09T17:55:56+00:00)
(Issue automaticaly closed due to status in Bitbucket: resolved)

(Original comment by gbrandl on 2007-09-09T17:55:56+00:00)
Applied in [dd3ed2822ea9].

(Original comment by gbrandl on 2007-08-21T16:41:36+00:00)
I'll wait for the enhanced version as discussed on #pocoo before committing it.


Q: Is there a way to migration / auto-convert NPSP CRLP Rollups?

They are limited in configuration, see:
https://trailhead.salesforce.com/de/content/learn/modules/opportunity-settings-in-nonprofit-success-pack/enable-customizable-rollups-npsp
Anyone developed a script to convert them?

I know of plenty of NPSP orgs that use Apex Rollup but if anyone has a migration script they haven't shared it here yet - I'd love a contribution for this!


Allow printing the number of states returned by history

Description:
Allow printing the number of states returned by history and time it took to extract.
If the code does not interact with devices:

[x] Local tests with tox run successfully. Your PR cannot be merged unless tests pass

Nice. Now let's see how hard the systems are going to hurt ;-)


Example preprocessor extensions

Example preprocessor extensions
don't wrap whole thing in write action

[!WARNING]
This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

#46
#45  👈
#44
master

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @ermattt and the rest of your teammates on  Graphite