Since 1.54.1 the package bundling is no longer "deterministic", that means we are re-deploying packages with no code changes.

Describe the bug
The commit in version 1.54.1 introduced a bug in the bundling process. The produced zip files are always binary different, with no code changes involved.
The consequence is that the packages are being re-deployed every time, as if they contain changes.
To Reproduce
In any repository, run:
# create a package
npx sls package
# save the zip file
mv .serverless/*.zip first.zip
# repeat package creation
npx sls package
# save the second zip file
mv .serverless/*.zip second.zip
# Now compare them
diff first.zip second.zip
# diff will tell the "binary files differ".

The cause is the modification date. You can unzip -l first.zip and unzip -l second.zip to see.
Expected behavior
The zip files should be bundled in a "deterministic" way, that means, bundling the same code should always produce the exact same bundle.
Additional context
If you downgrade to version 1.53.0, the plugin works in the expected way.

I created a PR to fix it: https://github.com/floydspace/serverless-esbuild/pull/558


Compare with remote file when upload or open a local file

Hi,
We will try to develop this, when you are working in a team in the same project, somebody could overwrite the work of other.
So we need to compare the two files, the local file ( the last version that was uploaded) vs the current deployed version, If it's different in first instance give the user to options, download the recent file or overwrite it.
Thanks.

Need this!

me to ! :)

Looks like this is a very useful feature for devs :)

We need this too!

+1 would be really awesome to have this feature

+1 This would be a very useful feature.


Languagetool, and quick word structure.

Closes #20
A larger overhaul needs to be completed, but that needs more time, and I don't have the time for that. https://github.com/jtagcat/jtagcat
It seems, that I'll be abandoning activity in overnode indefinitely.

Closes #20

Thanks. I will have a look.

todo: 6, 7, 0, 21

Indentation issues are gone. Good notice, My tools didn't show any diffs at the indentation parts, as no text was technically changed.


res-demo-stack.yaml deployment fails due to Node v14 Lambda runtime dependency

recipes/res/res_demo_env/assets/res-demo-stack.yaml line 135 includes https://research-engineering-studio-us-east-1.s3.amazonaws.com/releases/2024.01/ResearchAndEngineeringStudio.template.json which on line 3500 in the definition of Lambda function AWSCDKCfnUtilsProviderCustomResourceProviderHandlerCF82AA57 includes "Runtime": "nodejs14.x".  NodeJS v14 is deprecated as a Lambda runtime and this causes this stack deployment to fail.

This is fixed in a recent release.


Please update your article

https://www.stgraber.org/2016/10/27/network-management-with-lxd-2-3/
I am trying to create a new network with a random IPv4 and IPv6 subnet and NAT enabled. So I ran the command "lxc network create testbr0".  Then , I got this.
sudo lxc network create testbr0
Usage: lxc [subcommand] [options]
Available commands:
config     - Manage configuration.
copy       - Copy containers within or in between lxd instances.
delete     - Delete containers or snapshots.
exec       - Execute the specified command in a container.
file       - Manage files on a container.
help       - Presents details on how to use LXD.
image      - Manipulate container images.
info       - List information on LXD servers and containers.
launch     - Launch a container from a particular image.
list       - Lists the available resources.
move       - Move containers within or in between lxd instances.
profile    - Manage configuration profiles.
publish    - Publish containers as images.
remote     - Manage remote LXD servers.
restart    - Changes state of one or more containers to restart.
restore    - Set the current state of a container back to a snapshot.
snapshot   - Create a read-only snapshot of a container.
start      - Changes state of one or more containers to start.
stop       - Changes state of one or more containers to stop.
version    - Prints the version number of this client tool.
Options:
--all              Print less common commands.
--debug            Print debug information.
--verbose          Print verbose information.
--version          Show client version.
Environment:
LXD_CONF           Path to an alternate client configuration directory.
LXD_DIR            Path to an alternate server directory.
error: unknown command: network
System:ubuntu 16.04     LXD 2.8
It seems you change it but you didn't update your article.

Please pay more attention on the wiki or it will be easy to make the newcomer to be confused.

Your for sure not running LXD 2.8 as lxc network .. is absolutely a valid
command.
Can you show the output of lxc --version ?
--
Aron Podrigal
718-942-9990 x 221
Software Engineer
MongoTel
On Mon, Feb 6, 2017 at 8:37 AM, one2Ter<EMAIL_ADDRESS>wrote:

Please pay more attention on the wiki or it will be easy to make the
newcomer to be confused.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/lxc/lxd/issues/2850#issuecomment-277682797, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AEsfGGOqEv7VFHb1Vi5sUz0VgGcKbyl7ks5rZyIegaJpZM4L4L1U
.

Sounds like you're getting confused between 2.0.8 and 2.8, those are two completely different version numbers :)
LXD 2.8 does support "lxc network", the LTS branch of LXD (currently at 2.0.9) does not get feature backports and so, does not include that command.
The article makes it quite clear (it's even in the title) that you need LXD 2.3 or higher.
If you want to use the non-LTS branch of LXD on Ubuntu 16.04 LTS, you can do so by installing LXD from backports:
apt install -t xenial-backports lxd lxd-client

apt install -t xenial-backports lxd lxd-client
Reading package lists... Done
E: The value 'xenial-backports' is invalid for APT::Default-Release as such a release is not available in the sources

@one2Ter looks like your particular system doesn't have the "backports' repository enabled. If on a desktop machine, the software sources settings panel will let you turn it on, on a server, you'll need to enable it in /etc/apt/sources.list. In theory all official Ubuntu images should have it enabled by default, users are obviously free to then turn it off.

Thank yuou for your help


TaskItProcesses-Tests errors in Pharo 9

Testing PR #95, there are no loading errors but TaskItProcesses-Tests signal error.
Steps:

Download Pharo 9 and evaluate:

Metacello new
  baseline: 'TaskIt';
  repository: 'github://pharo-contributions/taskit:94-DNU-when-loading-default-group-in-Pharo-9';
  load.

Execute any of the tests in TaskItProcesses-Tests package.

It can be isolated as this, instead of step 2:
TKTConfiguration
		resetSoleInstance;
		profileNamed: #test.

Note:
This only happens in P9 (not in Pharo 8)

The source of the error is in TKTDevelopmentProfile class>>#profileValues, where this class from package TaskItProcesses depends on classes in package TaskItDebugger (which is not loaded by default group in P9).
This dependency wasn't declared in the baseline.
Now I'm not sure how to fix it:

move TKTDevelopmentProfile to TaskItDebugger, or
Declare dependency TaskItProcesses->TaskItDebugger and fix the issues in that project in P9 (reverting https://github.com/pharo-contributions/taskit/pull/95).


CU-myvvp0: underwriter commissions

Task linked: CU-myvvp0 Add commission fee for lead underwriter to the commissions array - will be 0 in most cases


Retrieve message_id after successful message send

Describe the feature you would like to see
Sorry if I missed this in the docs somewhere, but I don't see a method to retrieve the message_id of a successfully sent message.
In Legacy FCM it was an object key value returned but I don't see the method defined in the here:
Legacy FCM:
    $response = $client->send($notification);
    if (isset($response['message_id'])) {
        ...
        ...
    }

When you use the Messaging::send() method, you will get back the response returned by the Firebase FCM API:
[
  "name" => "projects/my-project/messages/6810356097230477954"
]

When you use sendMulticast() or sendAll() methods, you'll get an instance of MulticastSendReport (Docs)  that you can iterate to get the results:
use Kreait\Firebase\Messaging\SendReport;

$report = $messaging->sendAll($messages);

$names = $report->map(
      fn (SendReport $report) => $report->result)
);

// or

foreach ($report->getItems() as $item) {
    // https://github.com/kreait/firebase-php/blob/7.14.0/src/Firebase/Messaging/SendReport.php
    // ...
}

I admit this isn't well documented (or at all), but you're also the first person I remember asking about this - I always assumed this to be not super useful information 🙈.
Until now, that is - could you share what one can do with this message ID?
(MulticastSendReport as a name and the handling in general is because of… legacy 😅)

If you don't really care about the message ID, only if the message has been successfully sent or not, you can use a try catch block
use Kreait\Firebase\Exception\MessagingException;

try {
    $messaging->send($message);
} catch (MessagingException $e) {
    echo $e->getMessage();
    print_r($e->errors());
}

or, in the case of batch sends as described here in the Multicast Docs

Thanks for the quick responses.  The above responses are exactly what we are looking for.
Our platform allows clients to do push_notifications to their member base, we use the message_id to track various analytics related to client usage, client -> user interaction, user engagement per message.  Its something we implemented with legacy FCM and to keep things humming we need the message ID so we don't have to rethink our methodology.  :-)

Got it, thanks! I took the opportunity to slightly improve the docs on batch sends, it should be visible in the docs with the next release 🤞🏻
Having written "our platform allows clients", you probably know what's coming next 😅: If the SDK and my work are useful to you (also see the intro in the README), please consider becoming a sponsor! There's a Sponsors-only discord server with a private category just for your company/team waiting for you as well 😇


fix: setting attribute asynchronously late issue

Issue #19

Description

change attribute setting without actor and asynchronous

General Checklist

[x] Added new tests to cover change, if needed
[x] Build succeeds using Swift Package Manager
[x] All unit tests pass
[ ] Security oriented best practices and standards are followed (e.g. using input sanitization, principle of least privilege, etc)
[ ] Documentation update for the change if required
[x] PR title conforms to conventional commit style
[ ] If breaking change, documentation/changelog update with migration instructions

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Codecov Report

:exclamation: No coverage uploaded for pull request base (main@b7c25ab). Click here to learn what that means.
Patch has no changes to coverable lines.

Additional details and impacted files
@@           Coverage Diff           @@
##             main      #20   +/-   ##
=======================================
  Coverage        ?   94.54%
=======================================
  Files           ?       33
  Lines           ?     1669
  Branches        ?        0
=======================================
  Hits            ?     1578
  Misses          ?       91
  Partials        ?        0

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Sentence repeated

[The following sentence is repeated following a table: To determine which license a user has, sign in to the Microsoft 365 admin center and follow the steps in Assign licenses to multiple users on the Active users page.]

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

ID: 00543757-56fc-9709-49be-16970ffbb774
Version Independent ID: c2c1da0b-c7a4-1128-f9de-1f2fae684a11
Content: Create and manage environments in the Power Platform admin center - Power Platform
Content Source: power-platform/admin/create-environment.md
Service: power-platform
Sub-service: admin
GitHub Login: @jimholtz
Microsoft Alias: jimholtz

Thanks for your comment, @EllenWehrle. This issue has been assigned to the doc author for review.


Best way to override button behaviour on first slide

Hi
I'm loving the package, it's just what I needed for my project. But now I've hit a bit of a bump. I need to override the behaviour of the previous-button. When I am on the first slide, the previous button should not be disabled, and trigger a function changing my state (switching the slider out for a different component).
Is this possible, and what would the recommended way of doing it be?
Thanks for any help!

Hello @perenstrom the ButtonBack component has an onClick property and disabled property. It sounds like you can set the disabled to be false so it will never be disabled, and onClick to handle the click event if the current slide is 0.


embraced, glaumrie (logical-conflict)

This pull request was generated by the 'mq' tool

/trunk merge


Initialization scripts should be consistent with Shell Style Guide

This task will be used for future PRs when checking for scripts consistency with Shell Style Guide.
So far for each init script there was separate issue created. This issue will aggregate all releated PRs.
Link to guide:
https://google.github.io/styleguide/shell.xml

Closing this issue for now, as we have fixed at least the highly used initialization actions.


Updated MCP - DataImporter class to call Spreadsheet class without converting header names to lower case

This is to fix the issue: https://github.com/Adobe-Consulting-Services/acs-aem-commons/issues/1428
Before the change, Data Importer is calling the data = new Spreadsheet(importFile, PATH); method where the header names from the user entered spreadsheet are converted to lower case.
Changed the code to call another method public Spreadsheet(boolean convertHeaderNames, RequestParameter file, String... required) in com.adobe.acs.commons.data.Spreadsheet.java to write the column names as listed in the spreadsheet by user.
This will allow the columns names to be written as listed by user to AEM.
Users should be aware that the column names in the spreadsheet must match the case (camel case) for property names (key's), the way they need to be written to AEM. The reason for this is that if the case-sensitivity is not maintained, AEM UI is not identifying these properties and is not displaying the values accordingly.
For example, if the metadata schema has a field named abc:alternateTextCaption but if key is written to AEM as abc:alternatetextcaption (case-sensitivity not maintained), then UI will not map the value to that property to be displayed on the UI.

Attaching sample test file
Publish_udpate-sample.xlsx

I see this issue happening in 3.19.0


(add option to) simplify condition error messages

When passing a Java 8 lambda function into ConditionFactory.until() or ConditionFactory.untilAsserted(), the error message that gets generated on failure is very verbose.  For lambda functions, it generates a description of the function including containing class, as well as the types of all variables used from the parent scope.
For example, the following is the error message generated by one of my conditions:

Condition with alias 'my helpful condition description' didn't complete within 500 milliseconds because assertion condition with alias my helpful condition description defined as a lambda expression in my.long.package.name.MyClass that uses java.util.function.Supplier, java.util.function.Supplierjava.util.Map, java.util.Mapmy.long.package.name.MyOtherClass [my helpful assertion description] <AssertJ error message>

First, the alias is repeated twice.  Second, the lambda description is not helpful, since there's already an alias and it's overly verbose.
The message basically boils down to

Condition with alias '<alias>' didn't complete within <timeout> because assertion condition with alias <alias> defined as <description> [<AssertJ alias>] <AssertJ error message>

I think you can safely remove the second alias portion, and remove the "defined as ..." portion if an alias is defined.  Or make an option to do that and allow it to be set globally (using a static setDefault method in Awaitility).
P.S. there seems to be a hanging "because" in the message that doesn't end up making a full sentence.

Is this easily doable? I.e. we don't need to dig into Hamcrest an change the way it generates error messages? If so perhaps you'd like to help out and submit a PR? Hopefully I'm about to release a new version by the end of this week.

Unfortunately I need to check with some people to see if I'm allowed to send a PR for this.
I've looked over the code and it seems easy enough.  All the relevant code is in this project.  In org/awaitility/core/AssertionCondition.java and org/awaitility/core/CallableCondition.java, the method generateDescriptionPrefix() generates the second "alias" string and the "description" sting.  There's already an if statement for when the method is a lambda, and an if statement for the presence of an alias.  That could easily be changed to not add the lambda description if there is an alias (in if (hasAlias) {}, just return the string without the "defined as a" portion).
The double alias display is an unfortunate side effect of the prefix generator method being used for two purposes, the getTimeoutMessage() function from ConditionAwaiter and the conditionEvaluationHandler.handleConditionResult<Match/Mismatch>() calls.  The first adds the alias already, the second does not.  So there isn't a super easy fix to that without some restructuring required.
The Hamcrest condition classes don't seem to be affected by this problem, because they don't describe the matcher, so those shouldn't need to be touched.
If I can send a PR I will, but it amounts to a 10-line change across 2 files (assuming the change is to the default behavior and an option isn't being used).  If I'm not able to send a PR and you have time to make the change, it would be much appreciated.
Thanks!

I've fixed this in master now

Thanks for the change!
I was more concerned about the long lambda description than the second alias, though.  Would it be possible to add the ability to remove that lambda description from the message in a future release?
Thanks!


WSL install not found

VSCode can't find the WSL install, restart needed then its fine. Happens almost every time

VSCode Version: 1.28.2
OS Version: Win 10.0.17134 Build 17134

Steps to Reproduce:

Open the program
Open WSL terminal

I feel like this isn't a VSCode issue - does opening the bash terminal (or running bash in a PowerShell/cmd window) show the same message ?

It's never happened in the bash window for me.
VSCode from a cold boot, not every time but most times.
After restart its fine.

How did you get to here? Just run "wsl" in powershell or did you configure a setting to open WSL by default?


Compiler name mangler does not ensure unique names in py2

Compiled functions that:

have the same name
are in the same module

will fail to compile in python 2.6 and 2.7.
Name mangling logic based on __name__ vs __qualname__ (available in >=3.3 only)
will cause a name-collision and eventually assertion error here.
This will cause to compiler to fail lowering to nopython and provide a confusing line-number reference pointing to the original function compiled.
Relevent code in compiler is found here and here.

This should have been fixed by changeset 7b11a70436e5b8a16570672767bafd39cb1f5cd1.


Updated constraints on event cell

Description
Fixed event cell spacing when the description is only one line. Made the event title mostly fit on one line.
Todos
Tweak iPad constraints so when the description is only one line long, extra spacing does not appear.
Screenshots

Some one-liner events are still loading with extra space. Titles look good though.

iPad also has extra spaces


RubyZip 3.0 Warning Blocking Kamal Deploy

I'm running into an issue where my deployment with Kamal gets stuck because of this RubyZip warning. Here's the message:
`Post-install message from rubyzip:
RubyZip 3.0 is coming!

The public API of some Rubyzip classes has been modernized to use named
parameters for optional arguments. Please check your usage of the
following classes:

Zip::File
Zip::Entry
Zip::InputStream
Zip::OutputStream

Please ensure that your Gemfiles and .gemspecs are suitably restrictive
to avoid an unexpected breakage when 3.0 is released (e.g. ~> 2.3.0).
See https://github.com/rubyzip/rubyzip for details. The Changelog also
lists other enhancements and bugfixes that have been implemented since
version 2.3.0.`
I've made sure my Gemfiles and .gemspecs are set to ~> 2.3.0 to avoid any breakages, but the warning keeps appearing and it's blocking the whole deploy process. Is there something else I need to do to fix this, or should I be handling this differently?
Thanks for the help!

whats the error message being triggered by the zip warning notice?

whats the error message being triggered by the zip warning notice?

There isn't an actual error message being generated, merely an indefinite stall occurring.
This issue mirrors the one previously highlighted in the following discussion: https://github.com/basecamp/kamal/discussions/747.


Add dynamic title

Fixes issue #46
In additional to PR https://github.com/michaelghinrichs/school-working-days-calculator/pull/48. (Must be merged too, without it - will see title "React APP", before the page load will be complete)
Implemented "super extra points" issue.

Awesome! This reminds me of another issue of entering a value of length 0 as the title. We don't have a way of recovering from that :(


Not able to buy nft

even though there are error codes, I don't really understand why the transaction does not go through

I am trying to buy this nft: https://canary.kodadot.xyz/ahp/gallery/52-385
from this account: 1cQB9WUTtwyH3H4Ksn7pLfJvMLCxtzQHbUNhZtVBasoX3X9

What is the issue here?

#8587
Royalty recipient address have balance less then ED
should be fixed by #8512

leaving this open as i cannot buy single nft from the first row

solved meanwhile I guess


Dont know what to do after it says Source Prepared, need help

Ive already created a bot and made a server, I got the Source Prepared and The bot doesnt show up in DC

idk also help me with the .bat

Hey, just use the ModdedPysilon version, it covers every bug and it make sure your discord account never get banned.
Leave me a star if you like my project ;)


share password by url

how can i  share password for my team if theirs vaults named different?
may be generate url by repo and open with gopass?

Today thats not possible. But sounds like something we might consider.
We will need to consider the security implications of doing so.

I don't see a good way to proceed with this FR. Every solution I could think of is either brittle or right away dangerous.
So I'm closing this for now. If anyone comes up with a concrete proposal feel free to reopen.


Error matching iam role when role uses a path

I'm having a problem getting the iam roles to match when the assumed role contains a path.
kubeconfig settings:
apiVersion: v1
clusters:
- cluster:
    server: <endpoint>
    certificate-authority-data: <cert>
  name: kubernetes
contexts:
- context:
    cluster: kubernetes
    user: aws
  name: aws
current-context: aws
kind: Config
preferences: {}
users:
- name: aws
  user:
    exec:
      apiVersion: client.authentication.k8s.io/v1alpha1
      command: heptio-authenticator-aws
      args:
        - "token"
        - "-i"
        - "eks-cluster"
        - "auth-test"
        - "-r"
        - "arn:aws:iam::000000000000:role/roles/SomeRole"

Non Working ConfigMap:
apiVersion: v1
kind: ConfigMap
metadata:
  name: aws-auth
  namespace: kube-system
data:
  mapRoles: |
    - rolearn: arn:aws:iam::000000000000:role/worker-node
      username: system:node:{{EC2PrivateDNSName}}
      groups:
        - system:bootstrappers
        - system:nodes
    - rolearn: arn:aws:iam::000000000000:role/roles/SomeRole
      username: admin:{{SessionName}}
      groups:
        - system:masters

Working ConfigMap:
apiVersion: v1
kind: ConfigMap
metadata:
  name: aws-auth
  namespace: kube-system
data:
  mapRoles: |
    - rolearn: arn:aws:iam::000000000000:role/worker-node
      username: system:node:{{EC2PrivateDNSName}}
      groups:
        - system:bootstrappers
        - system:nodes
    - rolearn: arn:aws:iam::000000000000:role/SomeRole
      username: admin:{{SessionName}}
      groups:
        - system:masters

As you can see from the non-working and working comparison I have to trim out the iam path to get the authentication to work.  (arn:aws:iam::000000000000:role/roles/SomeRole vs  arn:aws:iam::000000000000:role/SomeRole) Technically on AWS side the arn with the trimmed path is not the same role.

Hmm, thanks @scyellleader. Under the hood this is how the ARNs work thr roles/ is considered a friendly name or prefix - https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html#identifiers-friendly-names

This looks like a bug with role arns involving paths when mapping the assumed-role -> role.  The code is only taking the first part after assumed-role.  This should probably by strings.Join(parts[1:len(parts)-1], "/").  parts[0] is 'assumed-role' and parts[len(parts)-1] is the Session if memory serves me correctly.
https://github.com/heptio/authenticator/blob/master/pkg/arn/arn.go#L42

@mattlandis yes, that looks correct to me.  You just need to drop the first and last index for the parts array to be left with the full path and role.  That should also cover if the path has multiple slashes.  Thanks for finding the bug!

This cost me about a day's worth of work when trying to configure Codebuild to run commands on an EKS cluster. To allow a role to access a kubernetes cluster on EKS, you need to pass a role arn to a config map in cluster. As this thread points out, when you assume a role (as you need to do in Codebuild when running commands on an eks cluster) that has a path, aws under the hood will actually omit the path portion of the role arn. This causes the string value of role arn in the k8s config map to differ from the one that Codebuild is using, resulting in failure to authenticate.
I'm sure there's some history to why this is the case, but to my mind this is an unacceptable bug and, if nothing else, deserves to be documented very clearly in multiple places, especially in IAM docs.

I agree with @MarkPare , I had inverted 2 days deploying a EKS cluster in Landing Zone without success and the problem was my instances roles had a path in the ARN. In my comnpany this is a requirement because we group our IAM Roles in path for security reasons.
Regards

I wasted about a week on this bug.

Aaaaand I just found this out. Good 48 hours spent on this. 🤦♂
Is the correct approach here to put the roles in the aws-auth ConfigMap object without their paths?

Aaaaand I just found this out. Good 48 hours spent on this. 🤦♂
Is the correct approach here to put the roles in the aws-auth ConfigMap object without their paths?

Yes, you can just remove the path in the ConfigMap and it will all work as expected.

I wasted few hours when moved a cluster from non path to path based role. stumbled upon this thread....looking good

Sam here. Just lot 6 hours to this inconsistency :(

This is definitely not resolved yet. See #333, #268, #153


RecommendationFactory

This PR contains RecommendationFactory intended for use in construction of different Recommendation objects.
The factory can be used in the following way:
RecommendationFactory factory =
    RecommendationFactory.create()
    .selectType("BOOK")
    .whileMissingProperties(property -> {/* Code that asks input from user */})
Recommendation recommendation = factory.build()

Test conflict when merging #23 and this will happen - one branch needs to update the RecommendationFactoryTest to include URL for books after the other has been merged


Add links to fields in error in the Error section at the top of the form

This should be trivial as we have unique ids for each widget.

Not RadioWidget..

this would be awesome! any plans to make this happen?

No, would you want to work on this?

Ok, I can.

is some one working on this,if not i can take it up?


2873 Cancel doesn't reset in profile edit

Pull Request Checklist:

[x] Positive Test Case Written by Dev

[x] Automated Testing

[x] Sufficient User and Developer Documentation

[x] Passing Jenkins Build

[x] Peer Code review and approval

Positive Test Case

Click pencil icon to edit a user profile.
Make any changes, any possible changes. (DO NOT SAVE)
Click "Cancel" button, the profile page reload.
Go to step 1, observe all the changes that were made are not preserved.

@engineSound please address all 5 checkboxes in each PR before you merge


Add a section to the wiki on how to use custom social icons

You can find the new section here:
https://github.com/paskn/hugo-tania/wiki/Custom
I find this hard to figure out for new hugo users. While some themes have documentation on this, I thought that I can contribute for the theme I really like.
Cheers!

Invitation sended.
You should be able to add this to wiki after you become collaborator.

I have added a new section.


magic not annotating pins for caravel using lef file with create_top_pins.sh

@kareefardi can you please review an update this ticket?


[FEA] build cudf jars with NVTX enabled

Is your feature request related to a problem? Please describe.
Right now if you want to get an nvtx trace you have to go build cudf yourself. This is very time consuming if you are just using one of the base versions.  It would be really nice if we can either have another set of jars with it enabled or if we can just enable it in our regular builds.
I know it was shut off because there was performance hit, do we need to revisit that to make sure actually a problem.

In the past I saw what I thought was a very significant performance difference when running some queries. I tried to reproduce this by running TPCH q1 at scale factor 100 against 4 different cudf-0.19 jars each compiled slightly differently.
I compiled one like I normally do for development (NVTX enabled and RMM_LOGGING set to the default)
I complied a separate one with NVTX disabled
Another with NVTX enabled and RMM_LOGGING turned off
and finally the last one I downloaded from the nightly build repo that has both RMM logging disabled and NVTX disabled.
I ran the test using the benchmark tool included in the integration tests jar.  The only thing that I changed between the runs was the cudf jar.
$ egrep 'queryTimes|class' *.json
tpch-q1-parquet-1613596781989.json:  "queryTimes" : [ 146709, 144134 ],
tpch-q1-parquet-1613597155688.json:  "queryTimes" : [ 145989, 144112 ],
tpch-q1-parquet-1613602719033.json:  "queryTimes" : [ 146123, 143993 ],
tpch-q1-parquet-1613603478326.json:  "queryTimes" : [ 146179, 144077 ],

To me the only difference in the times that I can see appears to be within the noise between runs.  I will try with a few more queries to see if I can find a difference at all.  @rongou when you first asked to disabled NVTX in CUDF what was the query that you were running that showed a big enough difference that you wanted to disable it?

I ran all of the TPCH queries with the jar from the nightly build and for my build.  All of the hot runs were within what appeared to be noise.  The largest difference was for Q21 in which the jar with RMM logging and NVTX enabled happened to be 3.7 seconds (1.7%) faster.  My guess is that it was a hiccup.
Unless I can get a reproducible use case I am going to assume that NVTX enabled vs disabled has no impact on real world run times.  But I will leave this alone for a while to see if someone else can come up with a query where it does have a measurable impact.

I'm not sure it had a big effect on query performance to begin with, I think I was just trying to eliminate variables that might have affected PTDS. The option cudf had for turning off NVTX didn't work, so my fix was mainly about correctness. I believe the NVTX api itself has also gone through some major changes, so it's quite possible currently there is no perceivable performance difference with it on or off.

@rongou thanks, That is what we heard from the developer of the API. They expected the overhead to be a function call followed by a single global variable lookup.  That is what we are seeing in practice, so to make life simpler for customers I think we want to turn on NVTX by default in our builds.

+1 on this

@tgravescs can this be closed?

yes its turned on in rapids build


Make PythonAPI failing on Windows(CARLA 0.9.11): failed with exit status 1120

Hi! I'm trying to build CARLA 0.9.11 on windows.
After running "make PythonAPI", my [Setup] receive success. However, my [BuildLibCarla] ends up with warning below:
build\lib.win-amd64-3.8\carla\libcarla.cp38-win_amd64.pyd : fatal error LNK1120: 77 个无法解析的外部命令(unresolvable external commands)
error: command 'D:\VS2017\VC\Tools\MSVC\14.16.27023\bin\HostX86\x64\link.exe' failed with exit status 1120
Although it says "-[BuildPythonAPI]: Carla lib for python has been successfully installed in "D:\carla\PythonAPI\carla\dist"!",
dist doesn't show up in carla.
I also notice many warnings shows up like below:
libcarla.obj : error LNK2001: 无法解析的外部符号(unresolvable external commands) "class boost::python::handle __cdecl boost::python::objects::registered_class_object(struct boost::python::type_info)" (?registered_class_object@objects@python@boost@@YA?AV?$handle@U_typeobject@@@23@Utype_info@23@@Z)
I've read https://github.com/carla-simulator/carla/pull/2348 and https://github.com/carla-simulator/carla/issues/2339, but couldn't find the solution.
If you know how to solve this issue, please give me some advices.
Thanks in advance!

Hello, Did you succeed?

@EchoYJJ Thank you for the question. Are you able to post the full output of the make PythonAPI command. It sometimes finishes with a success message even if it was not successful. Can you also confirm if you are running the commands in the x64 Native Tools command prompt?

@EchoYJJ Thank you for the question. Are you able to post the full output of the make PythonAPI command. It sometimes finishes with a success message even if it was not successful. Can you also confirm if you are running the commands in the x64 Native Tools command prompt?

Hi! @corkyw10 Glad to receive your reply. I'm sure I run the commands in the x64 Native Tools command prompt.
And .egg file doesn't show up in PythonAPI\carla\dist.
The whole output is very long, there exists a lot of "warning C4819" : 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失(This file contains characters that cannot be represented in the current code page (936).Please save this file as Unicode to prevent data loss)
Also, errors contain a lot of "error LNK2001": 无法解析的外部符号 "public: virtual unsigned int __cdecl boost::python::objects::py_function_impl_base::max_arity(void)const " (?max_arity@py_function_impl_base@objects@python@boost@@UEBAIXZ)
For sake of the big scale of the full output, I put it in the txt below.
full output.txt
By the way, I also try to run "make launch" anyway. It will open CarlaUE4, but nothing shows up.

I check my D:\carla\Unreal\CarlaUE4\Content\Carla, only a gz. file exists.

Hi,
It seems that the PowerShell command to extract the content .tar.gz has failed, because the file is so big. I suggest to install the 7zip.org application in the default folder and then the build system will use 7zip to extract the next time. In the mean time you can extract that file by hand.
About the unresolved external errors it seems you are using Python 3.8 instead the Python 3.7, or maybe you have more than one version. I suggest to run the make commands using the ARGS="--python-version=3.7" parameter to specify which version you want to use, otherwise it can be that the Boost library takes one version, and the CARLA build systems takes another version, and then we have mismatch.
Another thing to check is that you have installed the x64 version of Python and not the x32 version.
Regards

Hi @bernatx  I do as you recommand, I download 7-Zip to "C:\Program Files (x86)\7-Zip". I don't know whether the position is right.
Then, I run make PythonAPI ARGS="--python-version=3.7" in VS2017 x64 tool.
However, the results seems to be no difference.
I also try to extract that file by hand, but it says "The File is corrupted". I notice the file is only 250KB, not so big like you say. Perhaps something went wrong with my tar file, do you know how to fix it?
Regards
make PythonAPI output.txt

otherwise it can be that the Boost library takes one version, and the CARLA build systems takes another version, and then we have mismatch.
hi, i have the same problem, how to examine the version of boost version.
on@boost@@YA?AVobject@123@AEBV4123@AEBV?$handle@U_object@@@23@1@Z)
libcarla.obj : error LNK2001: 无法解析的外部符号 "class boost::python::api::object __cdecl boost::python::api::getattr(class boost::python::api::object const &,char const *)" (?getattr@api@python@boost@@YA?AVobject@123@AEBV4123@PEBD@Z)
libcarla.obj : error LNK2001: 无法解析的外部符号 "class boost::python::api::object __cdecl boost::python::api::operator<(class boost::python::api::object const &,class boost::python::api::object const &)" (??Mapi@python@boost@@YA?AVobject@012@AEBV3012@0@Z)
libcarla.obj : error LNK2001: 无法解析的外部符号 "void __cdecl boost::python::api::setitem(class boost::python::api::object const &,class boost::python::api::object const &,class boost::python::api::object const &)" (?setitem@api@python@boost@@YAXAEBVobject@123@00@Z)
libcarla.obj : error LNK2001: 无法解析的外部符号 "class boost::python::api::object __cdecl boost::python::api::operator==(class boost::python::api::object const &,class boost::python::api::object const &)" (??8api@python@boost@@YA?AVobject@012@AEBV3012@0@Z)
libcarla.obj : error LNK2001: 无法解析的外部符号 "public: __cdecl boost::python::api::object::object(class boost::python::handle const &)" (??0object@api@python@boost@@QEAA@AEBV?$handle@U_object@@@23@@Z)
libcarla.obj : error LNK2001: 无法解析的外部符号 "class boost::python::api::object __cdecl boost::python::api::getitem(class boost::python::api::object const &,class boost::python::api::object const &)" (?getitem@api@python@boost@@YA?AVobject@123@AEBV4123@0@Z)
build\lib.win-amd64-3.8\carla\libcarla.cp38-win_amd64.pyd : fatal error LNK1120: 77 个无法解析的外部命令
error: command 'D:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\bin\HostX86\x64\link.exe' failed with exit status 1120

Hi, You can check which version of python goes to this file:
carla\PythonAPI\carla\dependencies\lib\libboost_python37-vc141-mt-x64-1_72.lib
In this case the python37 is for Python 3.7 version.
Maybe that helps

Hi, You can check which version of python goes to this file:
carla\PythonAPI\carla\dependencies\lib\libboost_python37-vc141-mt-x64-1_72.lib
In this case the python37 is for Python 3.7 version.
Maybe that helps

Hi @bernatx , there do exist that file, could you please tell me how to check it.

Hi,
I tried the following steps and it works.

Remove all the other versions of Python. (I uninstall Anaconda and reinstall Python 3.7.9 from Python.org.)
Add Python to path variable.
Delete the folders naming with "-install" in CARLA\Build

make clean
make PythonAPI

I hope it will help!

1. Remove all the other versions of Python. (I uninstall Anaconda and reinstall Python 3.7.9 from Python.org.)

@7788boy after removing conda and running the update.bat file I received the following error. Did you also receive it?
Update.bat
20201222_232b876
http://carla-assets.s3.amazonaws.com/20201222_232b876.tar.gz
Downloading "http://carla-assets.s3.amazonaws.com/20201222_232b876.tar.gz"...
& : The term 'C:\Program Files\Anaconda3\Scripts\conda.exe' is not recognized as the name of a cmdlet, function,
script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is
correct and try again.
At C:\Users\AGV2FE\Documents\WindowsPowerShell\profile.ps1:4 char:4
+ (& "C:\Program Files\Anaconda3\Scripts\conda.exe" "shell.powershell"  ...
+    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (C:\Program File...ripts\conda.exe:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException

1. Remove all the other versions of Python. (I uninstall Anaconda and reinstall Python 3.7.9 from Python.org.)

@7788boy after removing conda and running the update.bat file I received the following error. Did you also receive it?
Update.bat
20201222_232b876
http://carla-assets.s3.amazonaws.com/20201222_232b876.tar.gz
Downloading "http://carla-assets.s3.amazonaws.com/20201222_232b876.tar.gz"...
& : The term 'C:\Program Files\Anaconda3\Scripts\conda.exe' is not recognized as the name of a cmdlet, function,
script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is
correct and try again.
At C:\Users\AGV2FE\Documents\WindowsPowerShell\profile.ps1:4 char:4
+ (& "C:\Program Files\Anaconda3\Scripts\conda.exe" "shell.powershell"  ...
+    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (C:\Program File...ripts\conda.exe:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException

No, I didn't receive this.
Do you modify the path variable of Python?

1. Remove all the other versions of Python. (I uninstall Anaconda and reinstall Python 3.7.9 from Python.org.)

@7788boy after removing conda and running the update.bat file I received the following error. Did you also receive it?
Update.bat
20201222_232b876
http://carla-assets.s3.amazonaws.com/20201222_232b876.tar.gz
Downloading "http://carla-assets.s3.amazonaws.com/20201222_232b876.tar.gz"...
& : The term 'C:\Program Files\Anaconda3\Scripts\conda.exe' is not recognized as the name of a cmdlet, function,
script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is
correct and try again.
At C:\Users\AGV2FE\Documents\WindowsPowerShell\profile.ps1:4 char:4
+ (& "C:\Program Files\Anaconda3\Scripts\conda.exe" "shell.powershell"  ...
+    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (C:\Program File...ripts\conda.exe:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException

No, I didn't receive this.
Do you modify the path variable of Python?

Hi @7788boy, somehow I missed your reply. Currently, I have stopped using carla from source (using it from source is very inconsistent). I am just using the pre build version. If I build it again and face errors, I will post it here.
P.S: I was using the source version in order to use the new vehicle import in carla

I succeeded to solve this problem (windows built version 9.12 ).
The problem was that I had more than one installed Python versions.
Even I set windows PATH environment variable to point only on Python 3.8.10 which I use in this project, it seems that somehow the build process use also another Python version I had (Python 3.9.6) and a conflict was happen which cause to the link errors.
I do the follow steps:
(1)  Uninstall all other versions of python (in my case Python 3.9.6 )
(2) Took care that my environment variable PATH contains only the relevant folders needed for the Python I use (in my case 3.8.10 )

(3) Deleted the build folder of Carla - [Carla project folder]\Build
(4) Build Carla client again (make PythonAPI)
(5) Build Carle simulator server again (make launch)
The boost used was indeed using python 3.8, you can see it according to the its file name as shown:

The dist folder was created and contains the correct version of .egg file as shown:

Note: At the beginning, I tried using python 3.9.6 , but I found that thing were failed here and there and therefor I moved to 3.8.10 which was ok.

I have the same exact problem and i tried to build it on an other computer and the same exact error message occured (so the problem is not with my PC ?), i only have one version of python (3.7) and VS2017. Is there any hope i can solve this ? (been stuck with this problem for 3 days now )

Hi, I hit that issue and fix it by myself. I hope my experiences and fixes will be useful to everyone :)
Condition

After hit exit status 1120, you should verifiy these files exists in path {CARLA_ROOT}/PythonAPI/carla/:

xerces-c_3.lib
sqlite3.lib
proj.lib
libboost_*.lib

If you missing libboot_*.lib (4 or 5 matches with *), it's caused by a mismatch between your version of Python and the version of Python used by Boost. In most cases it is because you are using conda. Please check Fix for condition A for help.
If you exactly missing xerces-c_3.lib, sqlite3.lib and proj.lib, Please check Fix for condition B for help.

Fix for Condition A
In this case, the paroblem raised by python environment. After my testing, conda and pyenv will have the same problem.  For non-pro user, you can use the checklist below:

Uninstall all the Python and Python virtual environment manager in your system.
Remove all the PATH about Python in your system environment setting.
Directly install Python (Availabe version: 3.7, 3.8, 3.9) with follow the official documents.
Delete the entire Build folder {CARLA_ROOT}/Build in CARLA
Build now!

For pro user, you can check these things in your system:

python version: What's your python version and python path in your workspace?
pip version: Does the version of pip correspond to the version of python?
py version: Try command py -V to varify it. CARLA use py command to build. In pyenv cases, this will redirect to your system python setting.
boost python:  Boost will using the python version directly in system level. In conda and pyenv cases, this will use your system python setting. But you can also redirect it by adding setting using python::"{PATH_TO_PYTHON}" in %homedrive%%homepath%\user-config.jam.

I did not succeed in successfully compiling the Python API using the Python virtual environment, so we can continue the discussion here :)
Fix for Condition B
In this case, the paroblem caused by a small 'quotation mark missing bug' in {CARLA_ROOT}/Util/BuildTools/Setup.bat (line 195, 204, 213). This bug will let Windows failed to locate the path in some special cases, such like "C:\Program Files (x86)". Using fixes below:

Open {CARLA_ROOT}/Util/BuildTools/Setup.bat and find line 195, 204, 213
Adding quotation marks like below:

copy /Y "%INSTALLATION_DIR%\xerces-c-3.2.3-install\lib\xerces-c_3.lib" "%CARLA_PYTHON_DEPENDENCIES%\lib"
copy /Y "%INSTALLATION_DIR%\sqlite3-install\lib\sqlite3.lib" "%CARLA_PYTHON_DEPENDENCIES%\lib"
copy /Y "%INSTALLATION_DIR%\proj-install\lib\proj.lib" "%CARLA_PYTHON_DEPENDENCIES%\lib"

Build now!

In my case, it works to run "make PythonAPI" two times without any changes. But I have no idea why it works.

how to solve this problem? I face the same problem,救命

how to solve this problem? I face the same problem,救命

你解决了吗？我又碰到了一样的问题


OffsetManager Benchmark

Signed-off-by: Francesco Guardiani<EMAIL_ADDRESS>
Proposed Changes

Added a benchmark package and a benchmark for UnorderdOffsetManager

/retest

/retest


Hover Effects

Bug Report
Description
Hover effects will enhance the UI of the website
Screenshots

@chandel-aman Kindly assign this issue to me I will solve it asap!