Issue: I have a problem with my Flutter application.

Click to enter a certain page and report an error
flutter: [debug] Capture from onError BoxConstraints has NaN values in minWidth, maxWidth, minHeight, and maxHeight.
The offending constraints were:
  BoxConstraints(NaN<=w<=NaN, NaN<=h<=NaN; NOT NORMALIZED)
flutter: [debug] Capture from onError BoxConstraints has NaN values in minWidth, maxWidth, minHeight, and maxHeight.
The offending constraints were:
  BoxConstraints(NaN<=w<=NaN, NaN<=h<=NaN; NOT NORMALIZED)
flutter: [debug] Capture from onError BoxConstraints has NaN values in minWidth, maxWidth, minHeight, and maxHeight.
The offending constraints were:
  BoxConstraints(NaN<=w<=NaN, NaN<=h<=NaN; NOT NORMALIZED)
flutter: [debug] Capture from onError BoxConstraints has NaN values in minWidth, maxWidth, minHeight, and maxHeight.
The offending constraints were:
  BoxConstraints(NaN<=w<=NaN, NaN<=h<=NaN; NOT NORMALIZED)
flutter: [debug] Capture from onError BoxConstraints has NaN values in minWidth, maxWidth, minHeight, and maxHeight.
The offending constraints were:
  BoxConstraints(NaN<=w<=NaN, NaN<=h<=NaN; NOT NORMALIZED)
flutter: [debug] Capture from onError BoxConstraints has NaN values in minWidth, maxWidth, minHeight, and maxHeight.
The offending constraints were:
  BoxConstraints(NaN<=w<=NaN, NaN<=h<=NaN; NOT NORMALIZED)
flutter: [debug] Capture from onError BoxConstraints has NaN values in minWidth, maxWidth, minHeight, and maxHeight.
The offending constraints were:
  BoxConstraints(NaN<=w<=NaN, NaN<=h<=NaN; NOT NORMALIZED)
flutter: [debug] Capture from onError BoxConstraints has NaN values in minWidth, maxWidth, minHeight, and maxHeight.
The offending constraints were:
  BoxConstraints(NaN<=w<=NaN, NaN<=h<=NaN; NOT NORMALIZED)
flutter: [debug] Capture from onError BoxConstraints has NaN values in minWidth, maxWidth, minHeight, and maxHeight.
The offending constraints were:
  BoxConstraints(NaN<=w<=NaN, NaN<=h<=NaN; NOT NORMALIZED)

======== Exception caught by widgets library =======================================================
The following assertion was thrown building Container(bg: ShapeDecoration(shape: RoundedRectangleBorder(BorderSide(Color(0xff000000), 0.0, BorderStyle.none), BorderRadius.circular(8.0))), constraints: BoxConstraints(NaN<=w<=NaN, NaN<=h<=NaN; NOT NORMALIZED), dirty):
BoxConstraints has NaN values in minWidth, maxWidth, minHeight, and maxHeight.

The offending constraints were: BoxConstraints(NaN<=w<=NaN, NaN<=h<=NaN; NOT NORMALIZED)
The relevant error-causing widget was:
  MaterialApp file:///Users/ying/workspace/FlutterProjects/gitter/lib/main.dart:243:20
When the exception was thrown, this was the stack:
#0      BoxConstraints.debugAssertIsValid.<anonymous closure>.throwError (package:flutter/src/rendering/box.dart:517:9)
#1      BoxConstraints.debugAssertIsValid.<anonymous closure> (package:flutter/src/rendering/box.dart:541:19)
#2      BoxConstraints.debugAssertIsValid (package:flutter/src/rendering/box.dart:565:6)
#3      new ConstrainedBox (package:flutter/src/widgets/basic.dart:2293:27)
#4      Container.build (package:flutter/src/widgets/container.dart:428:17)
...
====================================================================================================

======== Exception caught by widgets library =======================================================
BoxConstraints has NaN values in minWidth, maxWidth, minHeight, and maxHeight.
The relevant error-causing widget was:
  MaterialApp file:///Users/ying/workspace/FlutterProjects/gitter/lib/main.dart:243:20
====================================================================================================

======== Exception caught by widgets library =======================================================
BoxConstraints has NaN values in minWidth, maxWidth, minHeight, and maxHeight.
The relevant error-causing widget was:
  MaterialApp file:///Users/ying/workspace/FlutterProjects/gitter/lib/main.dart:243:20
====================================================================================================

======== Exception caught by widgets library =======================================================
BoxConstraints has NaN values in minWidth, maxWidth, minHeight, and maxHeight.
The relevant error-causing widget was:
  MaterialApp file:///Users/ying/workspace/FlutterProjects/gitter/lib/main.dart:243:20
====================================================================================================

======== Exception caught by widgets library =======================================================
BoxConstraints has NaN values in minWidth, maxWidth, minHeight, and maxHeight.
The relevant error-causing widget was:
  MaterialApp file:///Users/ying/workspace/FlutterProjects/gitter/lib/main.dart:243:20
====================================================================================================

======== Exception caught by widgets library =======================================================
BoxConstraints has NaN values in minWidth, maxWidth, minHeight, and maxHeight.
The relevant error-causing widget was:
  MaterialApp file:///Users/ying/workspace/FlutterProjects/gitter/lib/main.dart:243:20
====================================================================================================

======== Exception caught by widgets library =======================================================
BoxConstraints has NaN values in minWidth, maxWidth, minHeight, and maxHeight.
The relevant error-causing widget was:
  MaterialApp file:///Users/ying/workspace/FlutterProjects/gitter/lib/main.dart:243:20
====================================================================================================

======== Exception caught by widgets library =======================================================
BoxConstraints has NaN values in minWidth, maxWidth, minHeight, and maxHeight.
The relevant error-causing widget was:
  MaterialApp file:///Users/ying/workspace/FlutterProjects/gitter/lib/main.dart:243:20
====================================================================================================

======== Exception caught by widgets library =======================================================
BoxConstraints has NaN values in minWidth, maxWidth, minHeight, and maxHeight.
The relevant error-causing widget was:
  MaterialApp file:///Users/ying/workspace/FlutterProjects/gitter/lib/main.dart:243:20
====================================================================================================

my code
import 'package:flutter/material.dart';
import 'package:flutter_bloc/flutter_bloc.dart';
import 'package:gitter/common/iconfonts/iconfonts.dart';
import 'package:gitter/common/utils/dark_mode_util.dart';
import 'package:gitter/common/utils/navigator_util.dart';
import 'package:gitter/common/utils/string_util.dart';
import 'package:gitter/ui/blocs/me/dark_mode/dark_mode_bloc.dart';
import 'package:gitter/ui/blocs/search/search_bloc.dart';
import 'package:gitter/ui/pages/search/search_history_page.dart';
import 'package:gitter/ui/pages/search/search_issues.dart';
import 'package:gitter/ui/pages/search/search_organizations.dart';
import 'package:gitter/ui/pages/search/search_people.dart';
import 'package:gitter/ui/pages/search/search_pulls.dart';
import 'package:gitter/ui/pages/search/search_repositories.dart';
import 'package:gitter/ui/pages/search/search_submit.dart';
import 'package:gitter/ui/widgets/profile_item.dart';
import 'package:gitter/ui/widgets/search.dart';

List<Function> _categories = [
  (BuildContext context) => 'Repositories With ',
  (BuildContext context) => 'Issues With ',
  (BuildContext context) => 'Pull Requests With ',
  (BuildContext context) => 'People With ',
  (BuildContext context) => 'Organizations With ',
  (BuildContext context) => 'Jump to ',
];

List<IconData> _leadingIcons = [
  IconFonts.repo,
  IconFonts.issue,
  IconFonts.pull,
  Icons.people,
  IconFonts.organization,
  Icons.arrow_forward
];

List<Function> _actions = [
  (BuildContext context, String searchText) {
    NavigatorUtil.push(
        context,
        SearchRepositoriesPage(
          searchText: searchText,
        ));
  },
  (BuildContext context, String searchText) {
    NavigatorUtil.push(
        context,
        SearchIssuesPage(
          searchText: searchText,
        ));
  },
  (BuildContext context, String searchText) {
    NavigatorUtil.push(
        context,
        SearchPullsPage(
          searchText: searchText,
        ));
  },
  (BuildContext context, String searchText) {
    NavigatorUtil.push(
        context,
        SearchPeoplePage(
          searchText: searchText,
        ));
  },
  (BuildContext context, String searchText) {
    NavigatorUtil.push(
        context,
        SearchOrganizationsPage(
          searchText: searchText,
        ));
  },
  (BuildContext context, String searchText) {},
];

class SearchPage extends StatefulWidget {
  @override
  _SearchPageState createState() => _SearchPageState();
}

class _SearchPageState extends State<SearchPage>
    with AutomaticKeepAliveClientMixin {

  @override
  void dispose() {
    BlocProvider.of<SearchBloc>(context)
        .add(SearchInitEvent(text: StringUtil.STRING_EMPTY));
    super.dispose();
  }

  @override
  Widget build(BuildContext context) {
    super.build(context);
    return Container();
    // return Scaffold(
    //   body: SafeArea(
    //     child: Column(
    //       children: <Widget>[
    //         Padding(
    //           padding: EdgeInsets.only(top: 4, bottom: 2),
    //           child: Search(
    //             autoFocus: false,
    //             hideLeft: true,
    //             hideRight: true,
    //             hideSpeak: true,
    //             hint: '搜索',
    //             defaultText: StringUtil.STRING_EMPTY,
    //             onChanged: (value) {
    //               BlocProvider.of<SearchBloc>(context)
    //                   .add(SearchInitEvent(text: value));
    //             },
    //             onSubmitted: (value) {
    //               if(StringUtil.isNotBlank(value)) {
    //                 NavigatorUtil.push(
    //                     context, SearchSubmitPage(searchText: value));
    //               }
    //             },
    //           ),
    //         ),
    //         BlocBuilder<SearchBloc, SearchState>(
    //           builder: (context, state) => Expanded(
    //             child: _content(state.text),
    //           ),
    //         )
    //       ],
    //     ),
    //   ),
    // );
  }

  Widget _content(String searchText) {
    return StringUtil.isBlank(searchText)
        ? SearchHistoryPage()
        : _searchPanel(searchText);
  }

  Widget _searchPanel(String searchText) {
    return ListView.separated(
      physics: NeverScrollableScrollPhysics(),
      itemBuilder: (context, index) => GestureDetector(
        onTap: () {
          _actions[index](context, searchText);
        },
        behavior: HitTestBehavior.opaque,
        child: Container(
          padding: EdgeInsets.only(left: 16, right: 12),
          child: BlocBuilder<DarkModeBloc, DarkModeState>(
            builder: (context, state) => ProfileItem(
              leading: Padding(
                padding: EdgeInsets.only(right: 16),
                child: Icon(
                  _leadingIcons[index],
                  size: 16,
                ),
              ),
              content: Text(
                '${_categories[index](context)}"$searchText"',
              ),
              action: Icon(
                Icons.arrow_forward_ios,
                size: 16,
                color: DarkModeUtil.isDarkMode(context, state.themeMode)
                    ? Colors.white24
                    : Colors.black26,
              ),
            ),
          ),
        ),
      ),
      itemCount: _categories.length,
      separatorBuilder: (BuildContext context, int index) => Padding(
        padding: EdgeInsets.only(left: 48),
        child: Divider(),
      ),
    );
  }

  @override
  bool get wantKeepAlive => true;
}

Steps to Reproduce

Run flutter create bug.
Update the files as follows: ...
...

Expected results:
Actual results:

Logs

Analyzing XXX...

   info • The declaration '_loadWidgetData' isn't referenced • lib/main.dart:294:16 • unused_element
   info • The declaration '_startBackgroundUpdate' isn't referenced • lib/main.dart:328:8 • unused_element
   info • The declaration '_stopBackgroundUpdate' isn't referenced • lib/main.dart:334:8 • unused_element
   info • Unnecessary cast • lib/ui/pages/tab_navigator.dart:73:23 • unnecessary_cast
warning • Publishable packages can't have git dependencies • pubspec.yaml:42:5 • invalid_dependency
warning • Publishable packages can't have git dependencies • pubspec.yaml:58:5 • invalid_dependency
warning • Publishable packages can't have git dependencies • pubspec.yaml:77:5 • invalid_dependency
warning • Publishable packages can't have git dependencies • pubspec.yaml:81:5 • invalid_dependency

8 issues found. (ran in 18.9s)

[✓] Flutter (Channel stable, 2.0.5, on macOS 11.2.3 20D91 darwin-x64, locale zh-Hans-CN)
    • Flutter version 2.0.5 at /Users/ying/flutter
    • Framework revision adc687823a (12 天前), 2021-04-16 09:40:20 -0700
    • Engine revision b09f014e96
    • Dart version 2.12.3
    • Pub download mirror https://pub.flutter-io.cn
    • Flutter download mirror https://storage.flutter-io.cn

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.3)
    • Android SDK at /Users/ying/Library/Android/sdk
    • Platform android-30, build-tools 30.0.3
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.8+10-b944.6916264)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.5, Build version 12E262
    • CocoaPods version 1.10.1

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 4.2)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.8+10-b944.6916264)

[✓] IntelliJ IDEA Ultimate Edition (version 2021.1)
    • IntelliJ at /Applications/IntelliJ IDEA.app
    • Flutter plugin version 55.1.5
    • Dart plugin version 211.7233

[✓] VS Code (version 1.55.0)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension can be installed from:
      🔨 https://marketplace.visualstudio.com/items?itemName=Dart-Code.flutter

[✓] Connected device (3 available)
    • WY's iPhone (mobile)       • 00008020-000A1D110A32002E            • ios            • iOS 14.5
    • iPhone 12 Pro Max (mobile) • EEEEEB90-613E-4D49-BCA5-F8EE7AD4A0F2 • ios            • com.apple.CoreSimulator.SimRuntime.iOS-14-5 (simulator)
    • Chrome (web)               • chrome                               • web-javascript • Google Chrome 90.0.4430.93

• No issues found!

Hi @realkimmy
Can you please provide a minimal complete reproducible code sample that does not use any third-party package/plugin?
Thank you

I found the reason, it is caused by a third-party plugin

Thank you.


Move:move debezium specific settings to a json file

Issue #51
moved the the debezium settings to dbz_event_to_fhir_config.json config file
and also moved the debezium settings to the event configuration class so that we have all the configs together
e2e test
TESTED:
mvn compile exec:java -pl streaming-binlog
-Dexec.args="--databaseHostName=localhost
--databaseUser=root --databasePassword=debezium
--databaseSchema=openmrs
--openmrsUserName=admin --openmrsPassword=Admin123
--openmrsServerUrl=http://localhost:8099/openmrs
--openmrsfhirBaseEndpoint=/ws/fhir2/R4
--snapshotMode=schema_only
--fhirSinkPath=http://localhost:8098/fhir
--sinkUserName= --sinkPassword= "

This change is

@mozzy11 @bashir2 i have updated the comments requested in a new PR ,,,though i need some help on why the pipeline is not instantiating theOffsetBackingStore classwith offset.dat https://pastebin.com/C1uAsES9
Thanks

@bashir2 kindly review

Thanks @gitcliff

Thanks @gitcliff  ,see some comments here

@gitcliff , did you really test out this PR , its kinda broken.

@mozzy11 i did test the PR

it seems not to run   .....,most probably some params are most likely to be interchanged.
I have been with the intelisoft team , and it failed to run , i also tested it on my local instance and it failed , when i ran a version without your PR , it ran

any way not sure exactly necesarily it this PR ,but anyway it doesnt run

@mozzy11 thats strange coz i run my pipeline here and its running https://pastebin.com/Dc8eWiSQ
may be you can share the logs

exactly , you got what i was talking about .
see this in your logs    After applying blacklist/whitelist filters there are no tables to monitor, please check your configuration
it actually doesn't listen to the changes  .
you try registering a new patient

follow up fix https://github.com/GoogleCloudPlatform/openmrs-fhir-analytics/pull/120


misc(payload-size): Upload payload size to angular firebase database

Secure the firebase access token
Upload compressed/uncompressed payload size to angular-payload-size firebase database
Path is /payload/cli/$branch/$commit
With commit message, and timestamp

The message should probably be either build: or test:. misc() isn't a valid scope.

Comments addressed. Update the test with Appveyor environment variables. Please take a look. Thanks!

@tinayuangao can you rebase please?

@filipesilva Rebased. Thanks!

@hansl some new problematic licenses are being introduced with this PR:
Invalid package licences found:
<EMAIL_ADDRESS>["Custom: https://github.com/douglascrockford/JSON-js"]
<EMAIL_ADDRESS>["Apache"]
<EMAIL_ADDRESS>["Custom: https://www.firebase.com/docs/web/changelog.html"]
<EMAIL_ADDRESS>["WTFPL"]
<EMAIL_ADDRESS>["Custom: http://linuxcommand.org/man"]
<EMAIL_ADDRESS>["Apache"]

Let's do this with the size tracker built into the ngbot instead.


Provide option to cache hashCode

Migrated from Google Code (issue 749)

Kinda necro-ing this issue, but I have been working on a project in which 100% of data classes are exclusively immutable, and this would come in handy. Maybe this was forgotten and never talked about.
I think the implementation could be something like what the String class does: add a private int _hashCodeCache = 0; variable on the class so instances will have that when initialized, and make hashCode check if that is 0 or not. If not, return the cached value. If 0, calculate hash and store it in the object.

In https://github.com/rzwitserloot/lombok/pull/52#issuecomment-379890711 @EqualsAndHashCode(cacheHashCode = true) was mentioned as possible way to implement this one. Automatically detecting that none of the fields could be set is quite hard, especially if we think about super classes. It somehow seems reasonable to cache by default if @Value is used but IIRC this annotation does not block non final fields so we might end up with some strange behaviour if someone sets one of the field after the hashCode was cached.

@Rawi01 I kinda started exploring how to do this in the codebase yesterday just for fun (I got the javac part done, not much for eclipse yet).
I just added a private transient int hashCodeCache = 0; field to the class if none existed (and warned about it if it did, also turning cacheHashCode into false) and modified the generated hashCode() method to check for it if cacheHashCode is true.
Perhaps we could just add in the documentation that this is intended for fully immutable objects (i.e.: all-final fields, all fields immutable (something we can't check anyway)) whose hashCode() will always return the same value and thus the user should be careful with it.
I don't know how this would be viewed by current lombok standards. I mean, it's clearly useful and it has a use-case, and we could warn the user if the class is either non-final or it has non-final fields, but there's only so much we can do besides adding documentation and defaulting to false.
We can check the class for non-final fields and for the lack of the final modifier in the class, but I guess the ultimate responsibility would end up falling on the user.

Check out here what I did for javac (obviously WIP).

@Rawi01

Automatically detecting that none of the fields could be set is quite hard, especially if we think about super classes. It somehow seems reasonable to cache by default if @Value is used but IIRC this annotation does not block non final fields so we might end up with some strange behaviour if someone sets one of the field after the hashCode was cached.

There are too many ways how this could go wrong (e.g., mutable members), but that's the user's responsibility. Lombok must not do the caching unless explicitly requested, so I'm afraid, @Value alone can't imply caching because of compatibility reasons.
@andrebrait

We can check the class for non-final fields and for the lack of the final modifier in the class, but I guess the ultimate responsibility would end up falling on the user.

I guess, I wouldn't bother as we can check everything. But there could be a mode adding assert $cachedHashCode == $computeHashCode(). For people developing and `running tests with assertions while running in production without them (which is IMHO the only sane choice), it could help to discover possible problems.

Some details I recall from old threads:
There were two variants discussed: Caching and precomputation, where the latter has some minor advantages:

It works even when the hashCode happens to be zero.
It needs no zero test so it's a tiny bit faster
It doesn't break immutability in any sense.

As caching and precomputation are mutually exclusive, an enum HashCodeMode {NONE, CACHED, PRECOMPUTED} would be nice, however, it's pain to write.

Precomputed will make lazy getters/lazy initialization inviable, though

@Maaartinus
For precomputed hashes, we would then have to check if we have lazily initialized fields that are included in the hashCode computation, I think, because precomputation would mean they won't be lazy anymore.
Although I think the users might have their use cases, computationally it's not too expensive to do an int comparison not a boolean comparison (specially since the branch predictor is going to catch up with the result quite fast given it will always evaluate to true, except for the first time), and it's more flexible than precomputing anyway (precomputing forces a heavy computation even if the object is not going to be used for hashing in that circumstance).
Also, we can add a boolean to check if hashCode() was computed instead of doing a zero equality check, though that adds yet another variable and the chances of hashCode() computing 0 are quite slim, aren't they? (but we should account for it if possible)

@andrebrait Sure, precomputed is a trade-off for cases where the initialization cost doesn't matter but the access does. I guess, there's no sane way how to make it work together with lazy getters and forbidding this combo would be IMHO good enough.
IIUYC, you're arguing about "precomputed" being not that useful when we have "cached", and I agree.

Also, we can add a boolean to check if hashCode() was computed instead of doing a zero equality check, though that adds yet another variable and the chances of hashCode() computing 0 are quite slim, aren't they? (but we should account for it if possible)

The boolean is rather ugly and can cost up to 8 bytes. I've read about a DOS attack exploiting string.hashCode() == 0, but that's probably just theoretical. I guess, the zero check solution is good enough.
So basically, forget what I wrote, except for the assert thing, which I still consider useful.

@Maaartinus I thought boolean and int were the same size in Java (4 bytes), except when used in arrays. I agree it's not "clean" but it is the solution for a hashCode equal to zero resulting in it not being cached.
 So adding a single byte may cost 8 bytes or be free. I'm unsure what solutions is better; I wanted just note the cost.
Concerning assert, that's simple. Everybody wants the caching, but it may go wrong when the fields change and it'd nice to have a possibility to to detect the problem somehow. So given a corresponding entry in lombok.config, you'd generate something like
public int hashCode() {
    if ($hashCode == 0) {
       $hashCode = computeHashCode();
    } else {
        assert $hashCode == computeHashCode(); // generated only when configured so
    }
    return $hashCode;
}

and a wrongly cached hashCode will blow my tests.

@Maaartinus yeah, @Value is just an indicator that the user might want this but we can not be sure about it. If someone uses @Value for immutable objects he have to add @EqualsAndHashCode(cacheHashCode = true) to all classes but that seems to be something that can be solved with meta annotations 😄
I think that $hashCodeCache == 0 should be sufficient as it is quite unlikely to happen and the worst thing is that there is a small performance impact for a few objects. If not, another alternative is a Integer field + a null check but that might be slower due to the unboxing.

Since this really is a boolean check, why not use boolean?
boolean should not be bigger than int, and it's what is closest to the
intended meaning of the code. Making it an int sounds backwards.
There is one other concern though - race conditions. When you cache a
computed hashcode for an object is it possible to end up with a corrupted
state somehow if two threads do it in parallel?
For truly immutable objects I doubt this is a problem in practice - at
worst, the value gets computed multiple times and we waste a few cycles,
right? Are we sure though that there isn't potential for some unforeseen
behaviour when multiple threads are involved?
Aside from that, this does beg the question. Most cache implementations
have a bunch of tunables that are there to improve performance and reduce
memory usage if an object isn't actively being used. They are tunables
because the load conditions and usage patterns of cached objects matter a
lot for things like cache timeouts. Without them, we risk ending up with an
implementation that burns too many cycles when disabled and burns too much
memory when enabled.
However, doing anything of the sort for this sounds like we'd end up with
both massive complexity and a potential configuration overload. Not
something I'd want on a 'simple' annotation like EqualsAndHashcode. Maybe
lombok properties fit the bill, but still.. the complexity of that would
quickly increase the scope beyond lombok's domain and into that of a more
specialised library that exposes the complexity in the code rather than in
some vague set of configuration properties.
Hrm.
On Thu, Jul 9, 2020 at 4:47 PM Rawi01<EMAIL_ADDRESS>wrote:

@Maaartinus https://github.com/Maaartinus yeah, @Value is just an
indicator that the user might want this but we can not be sure about it. If
someone uses @Value for immutable objects he have to add @EqualsAndHashCode(cacheHashCode
= true) to all classes but that seems to be something that can be solved
with meta annotations 😄
I think that $hashCodeCache == 0 should be sufficient as it is quite
unlikely to happen and the worst thing is that there is a small performance
impact for a few objects. If not, another alternative is a Integer field

a null check but that might be slower due to the unboxing.

—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/rzwitserloot/lombok/issues/784#issuecomment-656172001,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AABIERPYSDVXLC65L5MJTDTR2XJ6HANCNFSM4OUXTBKA
.

--
"Don't only practice your art, but force your way into it's secrets, for it
and knowledge can raise men to the divine."
-- Ludwig von Beethoven

For immutable objects (which is the only real use case for this, tbh), no risk of race conditions here. Strings do precisely that code (except they do hashCode == 0 check instead of a boolean.
Caching a hashCode calculation is just 1 byte more per object that uses that. It's 2 bytes if you use a boolean as auxiliary there. I really don't think there's much of a hit there. Also, it's only ever cached if the hashCode is calculated, which means the object is being used for something hash-related, so no risk of wasting cycles there.
The user has to be careful, yes, but that's also true if they cache hashCode themselves. We're just making it here so the user can keep the convenience of having lombok generate the hashCode method at the same time as they can cache it with a simple and proven mechanism (after all, java.lang.String uses it, and it there's any object type more widely used in Java than Strings I don't know what that is (aside from references themselves and primitive wrappers).

What I did is literally copying the implementation from java.lang.String, with the difference I made the field transient so it doesn't get accidentally picked up by serialization frameworks out there.
Other than that, it's the same implementation.

I created #2513 as a draft for the code needed for this change (or at least what I think an implementation might look like).

Thanks for the explanation.
One minor nit - The storage of the cache result is probably permanent.
Reading the code, it's just the same field as the one used for the flag, I
guess? It's a bit hard to read code generating code like that ;)
But it will be always there, regardless, if you turn this on.
Not a big deal overall I suppose.
On Fri, Jul 10, 2020, 00:50 Andre Brait<EMAIL_ADDRESS>wrote:

I created #2513 https://github.com/rzwitserloot/lombok/pull/2513 as a
draft for the code needed for this change (or at least what I think an
implementation might look like).
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/rzwitserloot/lombok/issues/784#issuecomment-656388199,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AABIERJPOH3M7YH7ZKNURWDR2ZCR5ANCNFSM4OUXTBKA
.

@randakar unless the user actually adds cacheHashCode = true on the @EqualsAndHashCode annotation, the code is 100% the same as it is right now.
No extra field in the class and no extra code in the generated hashCode() method.
The caching is permanent for thar object if it is ever calculated and the user is using cacheHashCode = true for that object's class.
Showing some code here:
@Value
public class Foo {
    private Bar bar;
}

becomes
public final class Foo {
    private final Bar bar;

    public Bar getBar() {
        return bar;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (!(o instanceof Foo) return false;
        Foo other = (Foo) o;
        return Objects.equals(bar, other.bar);
    }

    @Override
    public int hashCode() {
        int result = 0;
        result = 31 * result + Objects.hashCode(bar);
        return result;
    }
}

and
@Value
@EqualsAndHashCode(cacheHashCode = true)
public class Foo {
    private Bar bar;
}

becomes
public final class Foo {
    private transient int $hashCodeCache = 0;

    private final Bar bar;

    public Bar getBar() {
        return bar;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (!(o instanceof Foo) return false;
        Foo other = (Foo) o;
        return Objects.equals(bar, other.bar);
    }

    @Override
    public int hashCode() {
        if ($hashCodeCache != 0) return $hashCodeCache;

        int result = 0;
        result = 31 * result + Objects.hashCode(bar);

        $hashCodeCache = result;
        return result;
    }
}

Sounds like a good piece of documentation to add to the site.
And knowing our illustrious maintainers, they'll want you to add your name
to AUTHORS in that PR, too.
On Fri, Jul 10, 2020 at 8:59 AM Andre Brait<EMAIL_ADDRESS>wrote:

@randakar https://github.com/randakar unless the user actually adds cacheHashCode
= true on the @EqualsAndHashCode annotation, the code is 100% the same as
it is right now.
No extra field in the class and no extra code in the generated hashCode()
method.
The caching is permanent for thar object if it is ever calculated and
the user is using cacheHashCode = true for that object's class.
Showing some code here:
@Valuepublic class Foo {
private Bar bar;
}
becomes
public final class Foo {
private final Bar bar;
public Bar getBar() {
    return bar;
}

@Override
public boolean equals(Object o) {
    if (this == o) return true;
    if (!(o instanceof Foo) return false;
    Foo other = (Foo) o;
    return Objects.equals(bar, other.bar);
}

@Override
public int hashCode() {
    int result = 0;
    result = 31 * result + Objects.hashCode(bar);
    return result;
}

}
and
@Value@EqualsAndHashCode(cacheHashCode = true)public class Foo {
private Bar bar;
}
becomes
public final class Foo {
private transient int $hashCodeCache = 0;
private final Bar bar;

public Bar getBar() {
    return bar;
}

@Override
public boolean equals(Object o) {
    if (this == o) return true;
    if (!(o instanceof Foo) return false;
    Foo other = (Foo) o;
    return Objects.equals(bar, other.bar);
}

@Override
public int hashCode() {
    if ($hashCodeCache != 0) return $hashCodeCache;

    int result = 0;
    result = 31 * result + Objects.hashCode(bar);

    $hashCodeCache = result;
    return result;
}

}
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/rzwitserloot/lombok/issues/784#issuecomment-656517956,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AABIERNTBCEO2RV2S46AW63R2234PANCNFSM4OUXTBKA
.

--
"Don't only practice your art, but force your way into it's secrets, for it
and knowledge can raise men to the divine."
-- Ludwig von Beethoven

@randakar Just added myself to it. I'll write documentation for the website when the Java code in the PR is good enough.
I'm doing the Eclipse compiler bits but they're much more complicated than the javac part. :-/
I should finish it tomorrow, though.

Will be in the next release. Thanks @andrebrait for the contribution.


Add option to use relative paths for NativeTypeName

Right now, a full path to each header file is used for NativeTypeName in generated files. This makes it so generating in CI or across different dev systems has different paths. Instead, an option to allow relative paths to be used for this would be very helpful for reproducible generations.

What would this path be relative to? A separate/explicitly stated option?

Likely, yeah. I'm generating into a path in the source tree, so a relative path in the same source tree is what I would want.


Update DefaultAccountStateHandler.java

Closes #1844
When used with OpenLDAP, an AccountPasswordMustChangeException should be throw instead of CredentialExpiredException if pwdReset attribute is set to TRUE

Could I ask you to submit the ICLA form from here:
https://www.apereo.org/licensing/agreements/icla
When you have, please post back here and let us know. Thank you!

I filled the form

You have submitted a patch "to your own repo". Pull requests need to be submitted to apereo/cas

ok , I do it now


NetBeans 9.0 Release Announcement

In preparation for the 9.0 Release.
Still missing:

Links to votes.
Verify links to final artifacts.
Setting the final release date.

If I can do anything, let me know here, from a quick glance, everything looks OK.

Let's do it, merge this, or should we wait for mirrors or something else.

I'm tweaking the URLs in another branch.

I've updated the links, etc. on https://github.com/apache/incubator-netbeans-website/pull/70
Does it look better? We could merge that one.

OK, merged that one.


Is there a way to show k8s user in logs of a pod?

We need to track which user executes which commands in some pods. Is there a way to get k8s user in Falco logs withihn each log? I already configured k8audit plugin and it can show k8s user. but it shows this once and in separate log. I want to get this on each log for forensic analysis. at least I want to know sequence of commands executed by which user.
thank you.

cc the author of k8s-audit @jasondellaluce

Duplicated of https://github.com/falcosecurity/falco/issues/2752


[Feature Request] Sluggable transliterate, and improve getSluggableFields

Hi! Would be great if Sluggable, will can make automatic transliteration from Cyrillic, like in gedmo ext. Now from the box it works only with Latin.
And it will be great if I can pass to generateSlug() not only field name, but also  fox example getters name.

@denys281 Everything is implemented and merged, you can close this issue now.

@MAXakaWIZARD  I haven't permission to do this ;-)

thanks \o


Tribute Page Challenge Issue

In the Pen settings under CSS, when I try to add Bootstrap the link given in the example Tribute Page made by Quincy Larson is significantly different from the link that appears when I click "bootstrap" under Quick-add.  Is this just an updated version? I've noted there are some small differences in how it affects the final product.

Yes, codepen recently updated their Bootstrap quick add to include the new beta of Bootstrap, v4.0.0. I have noticed in the help channels that some users have had issues using the new version of Bootstrap so I suggest you manually use the link to the old version, 3.3.5.

This isn't really an github issue. This would be better discussed in the Gitter help channel or on the forums. @Russellmania91 if you could close this issue it would be much appreciated! I'll also let the mods know so they can close this as well.

Codepen issue has nothing with freeCodeCamp site.
Happy Coding.

Thank you for your help guys.  Sorry for asking in the wrong place. Will ask in Gutter help channel or forum next time.

@Russellmania91 No problem.


PSGallery Not Registering as Repository on Oracle Linux 7.6

After installing Powershell on Oracle Linux 7.6, I am unable to find and install any modules from PSGallery. When I attempt to run the command Install-Module -Name VMware.PowerCLI, I receive the error "No match was found for the specified search criteria and module name 'VMware.PowerCLI'. Try Get-PSRepository to see all available registered module repositories."
When I run Get-PSRepository, I get the following:
"WARNING: Unable to find module repositories."
After searching, I found that this is fixed by running Register-PSRepository -Default -Verbose upon which I receive the message "VERBOSE: Performing the operation "Register Module Repository." on target "Module Repository 'PSGallery' () in provider 'PowerShellGet'."."
However when I run Get-PSRepository again, I still receive the message "WARNING: Unable to find module repositories.".
I am not using a proxy or have any special way of getting to the internet. I feel as if this is an issue where it is not downloading the information (maybe due to a certificate problem) or it cannot write the data to an appropriate spot on the system (either permissions or such) but I have no way of verifying or testing. Any help would be appreciated!

Below is my system information:
PS /root> Get-Host

Name             : ConsoleHost
Version          : 7.1.3
InstanceId       : 26793cc3-f3fc-4bb8-afee-faa949de4637
UI               : System.Management.Automation.Internal.Host.InternalHostUserInterface
CurrentCulture   : en-US
CurrentUICulture : en-US
PrivateData      : Microsoft.PowerShell.ConsoleHost+ConsoleColorProxy
DebuggerEnabled  : True
IsRunspacePushed : False
Runspace         : System.Management.Automation.Runspaces.LocalRunspace

PS /root> Get-PackageProvider
Name                     Version          DynamicOptions

NuGet                    <IP_ADDRESS>          Destination, ExcludeVersion, Scope, SkipDependencies, Headers, FilterOnTag, Contains, AllowPrereleaseVersions, ConfigFile, SkipValidate
PowerShellGet            <IP_ADDRESS>          PackageManagementProvider, Type, Scope, AllowClobber, SkipPublisherCheck, InstallUpdate, NoPathUpdate, AllowPrereleaseVersions, Filter, Tag, Includes, DscResource…

[root@ops-center-analyzer ~]# cat /etc/os-release

NAME="Oracle Linux Server"
VERSION="7.6"
ID="ol"
VARIANT="Server"
VARIANT_ID="server"
VERSION_ID="7.6"
PRETTY_NAME="Oracle Linux Server 7.6"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:oracle:linux:7:6:server"
HOME_URL="https://linux.oracle.com/"
BUG_REPORT_URL="https://bugzilla.oracle.com/"

ORACLE_BUGZILLA_PRODUCT="Oracle Linux 7"
ORACLE_BUGZILLA_PRODUCT_VERSION=7.6
ORACLE_SUPPORT_PRODUCT="Oracle Linux"
ORACLE_SUPPORT_PRODUCT_VERSION=7.6

PS /root> ping <IP_ADDRESS>
PING <IP_ADDRESS> (<IP_ADDRESS>) 56(84) bytes of data.
64 bytes from <IP_ADDRESS>: icmp_seq=1 ttl=117 time=7.31 ms
64 bytes from <IP_ADDRESS>: icmp_seq=2 ttl=117 time=7.28 ms
64 bytes from <IP_ADDRESS>: icmp_seq=3 ttl=117 time=7.39 ms
64 bytes from <IP_ADDRESS>: icmp_seq=4 ttl=117 time=7.16 ms

I transferred this issue to PowerShell/PowerShellGetv2 since this is an issue with Install-Module and Register-Repository


refactor: remove dependency on pymatrix (and stdlib copy)

Get rid of the dependency on pymatrix because we are barely using it as is.  BONUS we're also dropping the dependency on the stlib copy lib because that's not available on CircuitPython 8.x
This closes #25.

Force merging because failing test is caused by an issue with the CI pipeline


add man_made=bunker_silo, closes #5157

Thanks @manfredbrandl !  Sorry I missed this PR initially, but it looks great 👍


Remove obsolete certs/ dir

This change is

It looks like it's not obsolete after all. This is needed in non-operator deployment.


Only one digit showing up in score counter

Hello,
I ran the project and noticed that the score counter in the top-left corner is always 0. It wouldn't increment, but I see it getting slightly displaced to the right when it should increment.
I tried to change the string to be displayed in the main class to "foo" and it would only print out the "f", i.e. the first char.
I'm not sure if this is a platform dependent bug, I'm using macOS Ventura 13.3.1 (ARM) with rustc 1.69.0 (84c898d65 2023-04-16)
Thank you for the cool project :)

This happens to me in Linux too. I just cloned the repo today.
Screencast_20240310_184920.webm


this.$route.path incorrect when url have params

Version
2.6.9
Reproduction link
https://codepen.io/18959263172/pen/GbQOQy
Steps to reproduce
when I visit with url '/article'
this.$route.path is right and the value is '/article'
when I visit with url '/article/1'
but  the value of this.$route.path that console put out is '/'
What is expected?
'/article/1'
this.$route.path is like '/article/1'
What is actually happening?
this.$route.path is  '/'

Hi, thanks for your interest but Github issues are for bug reports and feature requests only. You can ask questions on the forum, the Discord server or StackOverflow.
If you are reporting a bug, make sure to provide a boiled down editable and runnable repro


Bracket pair colorization and ligature for Cascadia Code

This may or may not related to issue #148885. I'm using Cascadia Code with ligature enabled, and I noticed that #[ in Rust isn't colored.

And without ligature:

Now here's the weird part. I open the debug console, and it turns out that when ligature is enabled, the [ part did get highlighted, but the yellow color just doesn't show. (To me that kinda sounds like a bug in Chromium itself)

But, if I then add font-variant-ligatures: none; to the .bracket-highlighting-0 class, it solve the issue:

And here's the result:

As we can see it has the ligature like the first image, but with the correct color. However, this fix only works temporarily. Reloading the editor will then result in the second image (i.e. without ligature). I've tried several other hacks such as display: inline-block; but they all works the same: gives me the last image until I reload the editor, and then it becomes the second image. I found no CSS that gives me the last image permanently.

Interesting; for Fira Code with ligature enabled, both characters are highlighted (I suppose that works too). So maybe this is a Cascadia Code specific issue?

/duplicate #131092

Thanks for creating this issue! We figured it's covering the same as another one we already have. Thus, we closed this one as a duplicate. You can search for similar existing issues. See also our issue reporting guidelines.
Happy Coding!


+{props.CA.ca.X_ALU_COM_DLCarrierAggregationNumberOfEntries}

I won't be very useful in debugging an React app, but this is what shows on my screen.

Thanks for reporting, @AndrewPardoe
This should now be fixed. I was testing against someone else's signal to implement carrier aggregation info because my own gateway does not normally connect to additional bands. I ended up changing the formatting of the CA information after switching to my actual signal and made a mistake that didn't get caught til you filed your report. Thanks again!


Playbooks in configureAnsible script are in different location

Describe the bug
The job templates refer to playbooks that are stored in scripts/playbooks/***.yaml.
playbooks are actually stored in install/scripts/playbooks/***.yaml

in keptn v0.1 playbooks are located in scripts/playbooks/***.yaml.

double checked. files are in correct folder in release-0.1.x branch. closing the issue.


Job registry

closes https://github.com/inveniosoftware/invenio-jobs/issues/49

Looks good! Couple things

I think this arrow is pointing the wrong way? Normally it goes from > to v (like on https://about.zenodo.org/roadmap/) but it goes from v to <
I think the banner should go below the config, especially as you above in the text
It would be nice to have a "copy to clipboard" button

I think the text should say "Modifying the Custom args field will replace any arguments specified above and run the task with the custom configuration." (add 2 the)

My other feedback was about moving the Task selection to the top of the create page and auto-filling the task title

Do the screenshots in the first comment need updating?


feat: Add asCommandActivity and asCommandResultActivity

Fixes #3560
Adds these two methods to ActivityEx along with appropriate tests.
Relevant .NET Links

ICommandActivity
CommandValue
ICommandResultActivity
CommandResultValue

Pull Request Test Coverage Report for Build 746283459

0 of 0   changed or added relevant lines in 0 files are covered.
1 unchanged line in 1 file lost coverage.
Overall coverage increased (+0.004%) to 84.443%

Files with Coverage Reduction
New Missed Lines
%

libraries/botbuilder-lg/src/templateExtensions.ts
1
84.48%

Totals

Change from base Build 745616236:
0.004%

Covered Lines:
18888

Relevant Lines:
21288

💛  - Coveralls

@EricDahlvang would you give this a quick review? Just want to make sure the type semantic line up around the generic type parameters.

@joshgummersall @stevengum After @joshgummersall merged main into this branch, the schema merge tests failed. So, I ran the tests locally to generate a new tests.schema file and committed it.
However, none of code in this PR deals with tests.schema and it looks like the schema merge tests all passed on previous commits to main. So, I have no idea why tests.schema is needing a change and this is throwing up a little bit of a red flag for me. Any idea what's going on?

@joshgummersall @stevengum Disregard that last comment. This is due to a change in sorting for BF-CLI. According to @chrimc62, this changed tests.schema should be merged.


Documentation is not accurate: PowerPlatflow Analytical dataflow can be stored in Dataverse

[Enter feedback here]
It seems that this document is not accurate, at least on the table documenting the Standard Vs Analytical differences.
If you create a dataflow in PowerPlatform, when choosing Analytical you can actually choose Dataverse as storage solution.....

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

ID: c08c29a4-99c2-69ca-6bcd-75541c697215
Version Independent ID: 0516d7ae-4cf4-a5e7-d20a-e3839ecf6120
Content: Understanding the differences between dataflow types - Power Query
Content Source: powerquery-docs/dataflows/understanding-differences-between-analytical-standard-dataflows.md
Service: powerquery
GitHub Login: @radacad
Microsoft Alias: bensack

Please ignore (I'm using bot automation to add labels). #please-open

Hi @MichaelDotEarly
Thanks for your dedication to our documentation. Unfortunately, at this time we have been unable to review your issue in a timely manner and we sincerely apologize for the delayed response.
Because the referenced apps no longer work in the manner described in this issue, we are closing this issue for now. However, if you feel that it's still a concern, please respond and let us know. If you determine another possible update to our documentation, please don't hesitate to reach out again. #please-close


UVI Request

--- UVI JSON ---
{
  "vendor_name": "Linux",
  "product_name": "Kernel",
  "product_version": "versions from  to before v4.19.198",
  "vulnerability_type": "unspecified",
  "affected_component": "unspecified",
  "attack_vector": "unspecified",
  "impact": "unspecified",
  "credit": "",
  "references": [
    "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=5f2818185da0fe82a932f0856633038b66faf124"
  ],
  "extended_references": [
    {
      "type": "commit",
      "value": "5f2818185da0fe82a932f0856633038b66faf124",
      "note": "fixed"
    }
  ],
  "reporter": "joshbressers",
  "reporter_id": 1692786,
  "notes": "",
  "description": "mISDN: fix possible use-after-free in HFC_cleanup()\n\nThis is an automated ID intended to aid in discovery of potential security vulnerabilities. The actual impact and attack plausibility have not yet been proven.\nThis ID is fixed in Linux Kernel version v4.19.198 by commit 5f2818185da0fe82a932f0856633038b66faf124. For more details please see the references link."
}
--- UVI JSON ---

This issue has been assigned UVI-2021-1001398


Fix operator deadlock introduced in the #23605.

Change the order of locking to keep it consistent in the CiliumEndpointSlice Manager.
Lock identityLock always before locking backends lock.
Fixes: #24206

Looks like build failed randomly.

/test

filed https://github.com/cilium/cilium/issues/24361 for the flake.

I've added commit hash that introduced the deadlock and added more documentation for both backend locks and identity locks.
I'll try to think about less error prone way of locking here.

@alan-kut unfortunately your comment has annoyed the linter. I'm sorry.

I had some strange wrong white space - it looked fine in my editor but now lint should be fixed.

/test


Needs a good update Help Wanted

To who ever is welling to help update MPOS and make it the best mining frontend please help out.
Thank you. #

How can I contact you?
My email<EMAIL_ADDRESS>Please contact me thanks


Tonel sources and import/export scripts

Adds Tonel sources and scripts to load from them, and export them back.

Beautiful!!!!  Thanks Esteban.


SignedMEVPayloadHeader mixes JSON-RPC and SSZ types

tersec on Feb 2 •
Along the lines of the comments about SignedBlindedBeaconBlock (#69), but here, the JSON-RPC and SSZ types are freely intermixed, with the sort-of-SSZ-type-looking SignedMEVPayloadHeader containing a MEVPayloadHeader the fields of which are a Data and Quantity (JSON-RPC serialization types), which itself contains a ExecutionPayloadHeaderV1(a consensus layer SSZ type, defined using the SSZ-serialization-defined Hash32, ExecutionAddress, Bytes32, uint64, etc types). It's not internally consistent.
Implementing this might involve drawing out, at each layer, the dual JSON-RPC form of SignedMEVPayloadHeader, the dual SSZ form of MEVPayloadHeader (because the sort-of-SSZ-defined SignedMEVPayloadHeader either has to be read as a purely JSON-RPC object, or if not, for all its component parts to have consensus layer-like definitions in addition to the purely JSON-RPC definitions here), and likewise but inverted for the nominally-natively-SSZ ExecutionPayloadHeaderV1.
For example, one might imagine the CL/SSZ MEVPayloadHeader:
class MEVPayloadHeader(Container):
payloadHeader: ExecutionPayloadHeaderV1
feeRecipient: ExecutionAddress
feeRecipientBalance: uint256
https://github.com/realbigsean/lighthouse/blob/mev-lighthouse/beacon_node/execution_layer/src/engine_api/json_structures.rs fills this out with some gaps, but none of it is directly specified and there are various points of ambiguity.

I think we should use SSZ for encoding all the block/header fields in builder_getHeaderV1 and builder_getPayloadV1, but not for the other regular params in the JSON-RPC.
For instance, setFeeRecipient should send it's fields just as regular JSON-RPC params, and not SSZ encoded.
ping @Ruteri @tersec @terencechain @lightclient

Closing this issue now - it's in the spec with the reasoning as follows (cc/ @lightclient):

We use SSZ encoding for the block data in the builder_getPayloadV1  request
The Engine API encodes everything as a JSON object, and to be consistent with that we use the same JSON objects in the responses as the EL client.
We use regular JSON-RPC params for regular requests, like builder_setFeeRecipientV1

If there's additional comments or questions, we can reopen :)


We need Tamagotchi sytle activites.

Tamagotchi style activities can be cool to have, this extension can be great relaxing time game.

Feed pets
Pet animals
Interact with them

Is there a branch or fork for this already? Id like to help if I can!

No there isn't, but if you want to contribute features that'd be great!

Sounds good, I have a pull request right now and am definitely thinking about contributing more. I think this project is a cool fun idea!


Treat Java module name as a first-class library property

Java introduced modules years ago with Java 9. By now, many library authors claimed a well-known name for their libraries. Either by specifying an Automatic-Module-Name in the MANIFEST.MF of the jar file or by an explicit module-info.class entry.
When using a library in a modular project, the end-user has to know that specific module name. As far as I know, there's no repository, search-engine or meta-crawler that exposes that information to the public.
Having an automatically updated index that makes repositories searchable for Java module names would be great to have.
tl;dr
Supersede @jodastephen 's https://github.com/jodastephen/jpms-module-names -- which offers a semi-automatic updated table of module name to group:artifact relation overview.
Supersede https://github.com/sormuras/modules as well.

I second that thought.
To be able to move forward to modular projects it is neccesary that developers:

Know if a maven artifact is Java 9 ready with
a) Having an 'Automatic-Module-Name' which makes them consumable as Java 9 Module
b) Have a module-info.class which makes them fully Java 9 compatible by allowing JLinker to work
which could be shown as a "Java 9" flag in two different outcomes along the artifact info in the beta UI.
Be able to search for a dependency by artifact name or module name.
Get a feeling for how many projects are already compatible, by having a list showing which dependencies are ready with respect to 1a and 1b

I get asked a lot about those points when giving Java 9 releated talks.
mvn dependency:resolve
already shows the module names for all of the dependencies when running it on Java 9 but it doesn't seem to make a distinction between automatic module names from Jar name or by 'Automatic-Module-Name' entry (still have to verify this though).
Because it is resource consuming for the community to mirror full maven central and compute the properties ourselves to get a list which is alway up to date, it would be very nice if sonatype could add some of those features to maven central.
See also the thread at:
https://twitter.com/rgransberger/status/987267392878403584

Hi @rgra
I explained this idea in more detail at https://gitter.im/sonatype-nexus-community/search-maven-org -- want to join the chat there? I will also expand the intial description with information scattered around some blog posts and other issues. Seems like a good place to collect the bits.
While we're discussing "the automated and central-ized solution", do you have some more libraries that are JPMS-ready and not listed here? Please, tell me about them by opening an issue or a PR. :)
My vision is that one day you may use JPMS module names to specify 3rd-party dependencies. A future build tool feature could also examine your module-info.java files and resolve all requires statements. Given that you somehow tell the tool which version you want. Via a module-version.properties perhaps? I already have a working proof-of-concept Gradle plugin that uses both, the hand-crafted module-maven.properties and a local module-version.properties, to achive the goal: use module names only

Hi,

My vision is that one day you may use JPMS module names to specify 3rd-party dependencies

I don't think that's a generally viable approach because there's not necessarily a 1:1 relationship between a "logical" module (i.e. a defined set of packages and classes) and a JAR artifact providing that module. E.g. in case of JCP/JarkartaEE etc. specifications, there may be multiple artifacts providing one and the same API, e.g. Hibernate's and Apache's versions of the JPA or Bean Validation APIs. They all must share the same module name (in the BV 2.0 spec, we recommend one, in future versions it'd be a mandatory part of the spec), so to be interchangeable. Ideally, there'd indeed be just a single artifact for such API which is shared across implementations, but it's not something that's going to be guaranteed.

Ideally, there'd indeed be just a single artifact for such API which is shared across implementations, but it's not something that's going to be guaranteed.

Then please extract the API into a module and share it under a unique name (and jar). :)
Do I read your example correctly, that when I write in my ideal world:
requires org.hibernate.bv I would get a jar that contains two "logical" modules, one being "javax.jpa"?
When I declare instead requires org.apache.bean.validation I'd get also two "logical" module as well, also on being "javax.jpa"?

My view is that search.maven.org and other search engines should allow search by module name. The results of a search by module name would be a list of artifacts that match (not just one). There may be multiple in the case of EE (outlined by Gunnar) or if a project has been patched and the patch published.
It is not wrong for maven central to have multiple artifacts with the same module name, but we do need a way to find them. This means that future versions of Maven will still need groupId:artifactId, as it is not up to Maven central to define what the best mapping is from a module name to an artifact.

I think that Stephen and Christian are both right :)
At least, you should be able to search for a specific module by its Java name (JPMS) and you should see if a specific artifact as a module-name, a module-info.class or nothing.
but that's not enough, we start seeing artifact that are wrongly modularized, i.e. the module-info and the POM disagree on the dependencies (log4j2 had that bug 2 or 3 releases ago), so considering the POM as the source of truth, we need to verify that all the module required in the module-info are listed in the dependencies. This can be done by Maven or Nexus.

@forax Hm..Maybe I misunderstand your concern related to POM relation to modules and dependencies. What about test dependencies in the pom which are usually not part of the JPMS modules (require?) ? Furthermore that might not work cause you can have multi-version jar's which are working for JDK 8, 9+...so thats a requirement which will not work...

The idea is to get the required java modules from the project module-info and see if there is a corresponding module-info with the same name in one of the dependencies of the POM.
If there is no project module-info to check :)
A required module can be declared static which means it is optional at runtime, so it should be either a normal dependencies or an optional dependencies.
Maven doesn't support to have different module-infos one for the code and one for the test, so you can not validate anything for the test.
Bascially, help people that know how to write a POM file to write a correct module-info.java.

As an FYI - we're starting some research on this at AdoptOpenJDK - See the kick off document for details.

@jorlina, @hboutemy, Terry and me just met online and discussed next steps to get this feature into search.maven.org -- we'll continue in about 2 weeks.
In the meantime, @jodastephen's jpms-module-names project was superseded by https://github.com/sormuras/modules. That database collected already over 4.000 unique module names by parsing the published results produced by an instance of https://github.com/sandermak/modulescanner running at Sonatype's infrastructure. The sormuras/modules database is updated on a daily cadence to include the latest modular libraries published on Maven Central.
Looking forward to see Java module names, like org.objectweb.asm, pop up here...

The new "versions overview result page", for example for https://search.maven.org/artifact/de.sormuras.bach/de.sormuras.bach, could also show the name of the Java module provided by a JAR artifact:

Just between "Version" and "Updated". ;-)

FYI: Created a similar feature request at https://youtrack.jetbrains.com/issue/PKGS-451 for Jetbrains' new Package Search product.
Here's a similar query https://package-search.jetbrains.com/package?id=de.sormuras.bach:de.sormuras.bach with a screenshot (w/o Java module API information):

ping

pong

how would you prefer search work?

Not sure, if this answers your question, but here are some example searches.
Search for all artifacts with this excact Java module name

m:junit
m:org.junit.jupiter

Search for all artifacts that coordinates (group, artifact, module) contain this string

junit
org.junit.jupiter

Basically, treat Java module names like the other coordinates as explained here:

See also https://github.com/sonatype-nexus-community/search-maven-org/issues/6#issuecomment-384446598 and https://github.com/sonatype-nexus-community/search-maven-org/issues/6#issuecomment-385181119.

The Java module system was introduced last year with Java 9. [...]

Java 17 is coming!

Is adding Java modules names to the read-only UI part of the "few other important milestones that will precede this work." mentioned here? 🤔
https://blog.sonatype.com/maven-central-and-sigstore

The Java module system was introduced last year with Java 9. [...]

Java 17 is coming!

Java 19 is coming... 😉
Watching now https://www.youtube.com/watch?v=m9zHea6w6gs

Java introduced modules years ago with Java 9.

Updated the initial description because Java 20 is around the corner.

Now, Java 21 is here.

Hello from Java 22


Image Resizer .WEBP support

Add .WEBP format support for Image Resizer
Webp format is relatively new, but it's spreading fast and because it's much more efficient than other image formats, I would expect it to enter the mainstream in a couple of years, that being said, I'd love to see it being supported by Image Resizer, because that's the only downside the toy currently has in my opinion.

If you'd like to see this feature implemented, add a 👍 reaction to this post.

Fair suggestion. Also mentioned in #1929 ~and #3905~.

Duplicate of #1929

It is actually supported

It is actually supported

Hi Alan and thank you for the response.
I have the latest version of PowerToys and the 'Resize Pictures' option does not display in the context menu.

For comparison, the option is displayed for .PNG files.

It doesn't show up in context menu. That's the bug. It's being tracked in #1929

@loafylemon is it possible that you might need a plug-in/codec? Can you check in Windows update (with "check for other software" option enabled) and in MS Store?

That also seems to be possible. See https://github.com/microsoft/PowerToys/issues/3905#issuecomment-636348106

@Jay-o-Way @alannt777 Webp extension is installed on my system and I believe it's installed by default as the installation date is the same as the day of clean Windows installation.
Image Resizer still does not show up in the context menu for webp files.

Nevermind. That's just a possibility


System Delivery: provide deployment artifacts

build an archive containing:
/bin - server/client run scripts
/doc - installation & admin guides, user/developer guides (?)
/lib - all internal and external dependencies
/samples - several samples
/direct access
/XQL access
/REST access
/src (!?)
/anything else?

done


RoutePropagator should differentiate between push and replace

What I'm trying to achieve
When using router.replace(…) in apps, RoutePropagator still propagates it as if router.push(…) was called. This leads to awkward situations.
Describe a proposed solution
router.replace(…) should trigger a different event or payload than router.push(…).
Similarly, clicking on a <Link href="…"> should trigger a different event or payload than <Link replace href="…">
Blocked by https://github.com/vercel/next.js/pull/50355

Since Vercel rejected, I'm also closing this until we find a better way to do that


May I translate to Chinese?

Hi, azizali
May I translate this cheatsheet to Chinese for sharing?
I will make sure indicate the original post, title author name.
Best Regards,
Steven

sure please post a pull request here so everyone can benefit
Thank you so much
Aziz Ali
Founder of iLoveCoding Inc.
E<EMAIL_ADDRESS>P:<PHONE_NUMBER>
W: iLoveCoding.org https://ilovecoding.org/
Twitter https://twitter.com/ilovecodingorg Facebook
https://www.facebook.com/ilovecodingorg Linkedin
https://www.linkedin.com/in/azizali/
P.S. Upgrade your skills + Become a Ninja Software Developer, with
proper guidance along the way. Learn more at iLoveCoding.org
http://ilovecoding.org/ or simply ask me about it.
P.P.S. Check out AzizAli http://azizali.com/.com http://azizali.com/ (my
personal website)
On Tue, Mar 26, 2019 at 12:48 AM Luka Huang<EMAIL_ADDRESS>wrote:

Hi, azizali
May I translate this cheatsheet to Chinese for sharing?
I will make sure indicate the original post, title author name.
Best Regards,
Steven
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/iLoveCodingOrg/javascript-cheatsheet/issues/2, or mute
the thread
https://github.com/notifications/unsubscribe-auth/ACfoLBXjHOyaZ-I-Mi9rxHw-r1tXUy8oks5vabS3gaJpZM4cKpnR
.


Some Statement Change

Some Statement Change
And change in value of k

This doesn't seem a major change @JAI-ARORA


Update DataProtection docs

Update code to reflect changes in https://github.com/aspnet/dataprotection/issues/120

Hi @javiercn, I'm your friendly neighborhood .NET Foundation Pull Request Bot (You can call me DNFBOT). Thanks for your contribution!
You've already signed the contribution license agreement. Thanks!
The agreement was validated by .NET Foundation and real humans are currently evaluating your PR.
TTYL, DNFBOT;

:shipit:

merged in 167046001ae540ee33d63a7da62e7d3db22786db


”Hașag”, ”Mândra”, ”Sădinca” are listed in the drop-down menu

Description:
When user writes ”Hașag”, ”Mândra”, ”Sădinca” the locations appear in the drop-down menu next to the comune and the county which is a part according to the law.
Precondition:
The website is up an running.

Step 1
Write in the search bar "Hașag"

Expected results
The location appears in the drop-down menu as "Sat Hașag, SIBIU (Loamneș)".

Step 2
Press "x" button.

Expected results
The location was deleted from the search bar.

Step 3
Write in the search bar "Hașag"

Expected results
The location appears in the drop-down menu as "Sat Hașag, SIBIU (Loamneș)".

Step 4
Press "x" button.

Expected results
The location was deleted from the search bar.

Step 5
Write in the search bar "Sădinca"

Expected results
The location appears in the drop-down menu as "Sat Sădinca, SIBIU (Loamneș)".


Fix prettify of tagged variants

Also changed order of read & write tests since a read function is now used in the write test.

Thanks for this contribution!


Write tests for the I18N module

Write tests (unit and/or integration) for the I18N module

Test for the I18N class added.


Fabric server crashes after player walks too far from tamed fox.

After taming one or more foxes, running too far away from them causes the server to crash. After restarting the server, trying to join the server with the same player causes it to immediately crash again.
Attached are the server crash logs, both after the first crash, and after trying to rejoin again after restarting it.
crash-2024-09-22_19.30.52-server.txt
crash-2024-09-22_19.32.42-server.txt
EDIT: Would also like to add that I only installed the mod on the Fabric Server, not on the Fabric Client

having the same issue but on singleplayer

Same here:
java.lang.ClassCastException: class lancet_.tameable_foxes.FoxFollowPlayerGoal cannot be cast to class net.minecraft.class_1308 (lancet_.tameable_foxes.FoxFollowPlayerGoal and net.minecraft.class_1308 are in unnamed module of loader net.fabricmc.loader.impl.launch.knot.KnotClassLoader @4909b8da)


Fix X-Forwarded-Proto in non-TLS deployments

In the httpd container configuration there was an issue that "X-Forwarded-Proto" header was setting "https" protocol always, no matter if TLS was enabled in the deployment or not. It caused issues in neutron server with pagination when TLS was disabled as client was doing request to the "http://" endoint and got in response "https://" links to "next" and "prev" pages.
This patch fixes this issue by setting correct protocol for both cases: TLS and non-TLS.
Related: OSPRH-10632

based on https://github.com/openstack-k8s-operators/neutron-operator/pull/423

makes sense, thank you @stuggi

From discussion with @olliewalsh and @slawqo this should probably removed here because if, it should be set where the client terminates


Reverting June Microsoft updates

Issue #, if available:
Description of changes:
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

/do-e2e-tests


Add instructions to modify curated environment

I would like to add some packages to a curated environment---to avoid installing all those deps that are already taken care of. For example, I did
env = Environment.get(
    workspace=ws,
    name="AzureML-Pytorch1.7-Cuda11-OpenMpi4.1.0-py36"
)

and then tried to add a pip package
dep = CondaDependencies()
dep.add_pip_package("tsfresh")

env.python.conda_dependencies=dep

but got the error
Environment name can not start with the prefix AzureML. To alter a curated environment first create a copy of it.

How would you suggest to proceed? Would it be possible to add some instructions in the doc?

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

ID: a10c58c2-1767-778c-5591-8b6eb1e50969
Version Independent ID: ecc11aa4-56c9-d8b0-69c0-d9978de4adc5
Content: Use software environments - Azure Machine Learning
Content Source: articles/machine-learning/how-to-use-environments.md
Service: machine-learning
Sub-service: core
GitHub Login: @saachigopal
Microsoft Alias: sagopal

We recommend using the clone method to copy and rename the curated environment and then adding the new dependencies. The doc will be updated, thanks.

Thanks. Looking forward to the instructions!

@saachigopal Hello Saachi, do you have a backlog item for this or you need to keep this opening for tracking? Thanks.

@saachigopal Hello Saach, there is another issue according the same document https://github.com/MicrosoftDocs/azure-docs/issues/74836 Could you please also update this page as well? Let me know how you want to track it. Thanks.

Instructions have been added to the doc, #please-close
https://docs.microsoft.com/azure/machine-learning/how-to-use-environments#use-a-curated-environment


Should be at top of function

https://github.com/VirtualActuary/zebra-vba-packager/blob/0f70c316e728dddbb52e93b34cfe2ed19759eb15/zebra_vba_packager/util.py#L48

Not necessary, usage of this function is recursive and that code point will always hit before trying to write to that directory.


When the element is can-defined, not able to dispatch DOM events

el.dispatchEvent(new Event("some-event"));

this should dispatch the event on the element, but since can-define sets up its own addEventListener, the DOM event doesn't work.

There's a test in master that is being skipped for this bug, DOM events work when can-defined

So to summarize, we need to support both defined property events and arbitrary DOM events.
@justinbmeyer One way to fix this would be to wrap canEvent.addEventListener and fallback to the Node.prototype.addEventListener if the eventName is not one of the defined properties. Does that sound reasonable to you?
Pseudo-code:
var canEvent = require("can-event");

var aEL = canEvent.addEventListener;
canEvent.addEventListener = function(eventName, fn){
  if(!this._define.definitions[eventName]) {
    return Node.prototype.addEventListener.apply(this, arguments);
  }

  return aEL.apply(this, arguments);
};

Implemented the above in https://github.com/canjs/can-custom-elements/pull/19

Can we use DOM events everywhere?
Sent from my iPhone

On Jan 22, 2017, at 4:15 PM, Matthew Phillips<EMAIL_ADDRESS>wrote:
Implemented the above in #19
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

We probably need can-define to not setup its own event stuff if it exists already
Sent from my iPhone

On Jan 22, 2017, at 4:15 PM, Matthew Phillips<EMAIL_ADDRESS>wrote:
Implemented the above in #19
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

I'm not understanding how that could work. If someone listens to a defined property event it has to go through the can-event system, doesn't it?

It doesn't have to go through can-event.  can-observation just calls obj.addEventListener("event", callbacks) here: https://github.com/canjs/can-observation/blob/master/can-observation.js#L154
I'm betting it can keep native DOM events and avoid using addEventListener ... the lack of batching MIGHT be an issue still.  However, most VM props don't need to change at the same time ... the internal lists, which would use can-event, would need batching and have it.

Regarding batches, you can probably add the event dispatching in the event queue, so it would be fired at the right time.  You'll have to make sure it add the batchNum, but everything should be possible.

I don't think I'm following your suggestion here. can-define does all of this stuff: https://github.com/canjs/can-define/blob/master/can-define.js#L649
You are saying to remove this, correct? If we remove that, how will it know that a property is being observed?

" property is being observed" happens when a property is being read and isn't related to the code you shared.
However, that code is important.  Could we provide our own addEventListener that calls the element's addEventListener as the base functionality instead of the can-event addEventListener?

Filed https://github.com/canjs/can-define/issues/145


Remove bogus SCM validation

As a follow-up to #7037, we decided to disable this bogus validation entirely since it doesn't add value compared to git's own output (it actually decreases the value since e.g. it omits the repository in question), it was emitted multiple times (probably still a bug for other validations that needs to be fixed) and it was unconditional, so e.g. it could cause SwiftPM to fail in cases where the branch/revision wouldn't be used anyway.
I also opted to remove the existing test here since it doesn't seem to be very useful for us to test git itself. We will now always just use git and the user will get the same behavior as when they're using an invalid branch with git itself.
rdar://117442643

@swift-ci please test


use new attribute binding syntax

This was giving me some deprecation warnings in ember-paper.

:+1:

I think its worth to bump the patch version number. People may be getting deprecation warnings right now.

Ya


Browsers do not close after each runner is done

I am not sure if this is a bug or a setting I am missing but my browsers remain open until all runners complete their tests.  I end up having 20+ open browsers.  Is there any setting to setup the browser to close after each runner complete the task?
This was especially visible when I used <parallelScheme>SCENARIO</parallelScheme>

closing browser is not a part of this plugin. Make sure your WebDriver has closed after test case finished.

@sugatmankar Closing the browser is outside the scope of this plugin, since people may have different requirements.
Closing the browser should be done using a JVM shutdown hook, or @After method.


docs(devs-infra): remove ESM docs for 26.5 documentation

Summary

Remove ESM docs for v26.5
Related to #2325
Test plan

Run npm run doc locally and check if v26.5 doc doesn't show ESM support menu item as well as preset page should not show ESM presets
Does this PR introduce a breaking change?

[ ] Yes
[x] No

Other information
N.A.

Pull Request Test Coverage Report for Build 547659319

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 93.629%

Totals

Change from base Build 547655795:
0.0%

Covered Lines:
945

Relevant Lines:
975

💛  - Coveralls


why keypoint (2-16) is defined as limb?

https://github.com/last-one/Pytorch_Realtime_Multi-Person_Pose_Estimation/blob/7c6f066499f039212c5f052edc1a79ba22193815/CocoFolder.py#L129
Also refer to the visualization here:
https://github.com/CMU-Perceptual-Computing-Lab/openpose/blob/master/doc/output.md#pose-output-format-coco

Probably because it is implemented as in the original repo? how about remove these connections and build a new PAF matrix? I guess the results are similar. Not sure.


Add getFailoverInfo API

What changed?
Add getFailoverInfoByDomainID API

Why?
To fetch on-going graceful failover info

How did you test it?
TODO

Potential risks
New API

Release notes

Documentation Changes

Pull Request Test Coverage Report for Build 71942dc4-a5ec-4d33-bf07-a227818e8772

17 of 189 (8.99%)  changed or added relevant lines in 13 files are covered.
110 unchanged lines in 15 files lost coverage.
Overall coverage decreased (-0.1%) to 56.403%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

client/history/grpcClient.go
0
4
0.0%

client/history/thriftClient.go
0
4
0.0%

service/history/grpcHandler.go
0
4
0.0%

service/history/thriftHandler.go
0
4
0.0%

client/history/client.go
0
7
0.0%

client/history/retryableClient.go
0
9
0.0%

client/history/metricClient.go
0
11
0.0%

common/types/history.go
0
15
0.0%

service/history/handler.go
0
15
0.0%

client/history/errorInjectionClient.go
0
19
0.0%

Files with Coverage Reduction
New Missed Lines
%

common/persistence/sql/sqlExecutionStore.go
1
61.55%

common/persistence/executionManager.go
2
75.75%

common/persistence/statsComputer.go
2
96.43%

common/task/weightedRoundRobinTaskScheduler.go
2
89.12%

common/persistence/nosql/nosqlplugin/cassandra/workflow.go
3
50.23%

common/task/fifoTaskScheduler.go
3
82.47%

service/history/execution/mutable_state_builder.go
4
69.8%

service/history/queue/timer_queue_processor_base.go
4
78.78%

service/history/task/transfer_standby_task_executor.go
4
90.4%

common/persistence/nosql/nosqlplugin/cassandra/workflowUtils.go
8
78.09%

Totals

Change from base Build 4a34a039-15ff-46ba-b5f7-0f167c6f8e52:
-0.1%

Covered Lines:
78791

Relevant Lines:
139693

💛  - Coveralls


3272 update message date overnight

Details

Adds a new Onyx store key for current date. The value is updated via a function throttled by 3 hours that is called on user interaction. That value is passed into ReportActionItemDate component as a prop, so it re-renders when the prop changes, causing the timestampToDate to be recalculated.
Fixed Issues

Fixes #3272
Tests

Change the throttle duration from 3 hours to 15 seconds in DateUtils.js updateCurrentDate function
Open a chat
Send a message
Change local time on your system to 23:59:50
Within 15 seconds of moving your mouse around the "Today" next to the message should be updated to "Yesterday"

!!! Important !!! Don't mouse over the message itself. From my observations, It causes a re-render that is unrelated to this PR and doesn't validate that my code works. To validate this PR, please move the mouse cursor around the LHN section or other messages.
QA Steps

Send a message
Leave the app open overnight
The day after move the mouse over the app and the "Today" next to the message should be updated to "Yesterday" (at least 3 hours must pass since last interaction with the app)

!!! Important !!! Don't mouse over the message itself. From my observations, It causes a re-render that is unrelated to this PR and doesn't validate that my code works. To validate this PR, please move the mouse cursor around the LHN section or other messages.
Tested On
The change only affects web and desktop.

[x] Web
[x] Mobile Web
[x] Desktop
[ ] iOS
[ ] Android

Screenshots

Videos of development tests. With manual system time change and a throttle timer of 15 seconds. Find system time in top right corner.
Web

https://user-images.githubusercontent.com/64093836/121804186-c97ea380-cc4d-11eb-8797-5bfb469ecd0a.mp4
Mobile Web

https://user-images.githubusercontent.com/64093836/121804189-cd122a80-cc4d-11eb-9091-df15ef9fcbe1.mp4
Desktop

https://user-images.githubusercontent.com/64093836/121804193-d00d1b00-cc4d-11eb-8d17-70257acc16e0.mp4
iOS

Android

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.

🚀 Deployed to staging in version: 1.0.68-5🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to production in version: 1.0.73-3🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅


Feature/roe 729 add web navigation middleware control

JIRA link
Resolves ROE-729
Change description
Add navigation control to the following endpoints and related methods
SECURE_REGISTER_FILTER_URL
USE_PAPER_URL
INTERRUPT_CARD_URL
PRESENTER_URL
ENTITY_URL
BENEFICIAL_OWNER_STATEMENTS_URL
BENEFICIAL_OWNER_TYPE_URL
BENEFICIAL_OWNER_INDIVIDUAL_URL
BENEFICIAL_OWNER_OTHER_URL
BENEFICIAL_OWNER_GOV_URL
MANAGING_OFFICER_URL
MANAGING_OFFICER_CORPORATE_URL
TRUST_INFO_URL
CHECK_YOUR_ANSWERS_URL
CONFIRMATION_URL

Work checklist

[x] Tests added where applicable
[x] UI changes meet accessibility criteria

Hi @mwestacott thanks for your updates, I will have a look at your comments after I confirm that the use of referer HTTP object is safe and correct. Thanks @markpit for the suggestion

Hi @markpit and @mwestacott, related to referer HTTP request header I have added a comment on slack dev channel


Define "hot"

Am I correct in assuming that a "hot function" is one that is frequently called?
My second guess would be one that is computationally expensive, or both.
This is a new term for me and I haven't been able to find a definition anywhere, so clarification in the book would be greatly appreciated.

I also want to know

computationally expensive

AFAIR it's "heavy".
"hot function" is about "how many times it's called" (probably it goes from physics)

Thanks for the suggestion. I added a definition in 48075fe.


Documentation does not reflect the NodeJS @azure/cosmos v3 SDK

Some of the API's for the @azure/cosmos sdk have changed between v2 and v3.
Notably in the queryIterator class, which no longer supports .toArray(), which is used all over the documentation.
The documentation says the following methods are public methods of the class queryIterator
current()
executeNext()
forEach()
getAsyncIterator()
hasMoreResults()
nextItem()
reset()
toArray()
but inspecting the code in queryIterator.ts in the source repo shows that it only has the following public methods
getAsyncIterator()
hasMoreResults()
fetchNext()
fetchAll()
reset()
I lost a day because I decided to follow the official documentation.
I've only just found the detail in changelog.md in the source repo for the SDK
Please can you update the documentation to reflect the changes to the v3 API.
Having the breaking changes documented in changelog.md in the source repo is not good enough, please update your tutorials and API docs on docs.microsoft.com

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

ID: f7ad84a6-f6b6-dd21-e7be-865d922c7ad4
Version Independent ID: 1f5a0315-d7b4-3f8f-3b1d-ae90c807859d
Content: Tutorial: Build a Node.js web app using JavaScript SDK to manage Azure Cosmos DB SQL API data
Content Source: articles/cosmos-db/sql-api-nodejs-application.md
Service: cosmos-db
Sub-service: cosmosdb-sql
GitHub Login: @SnehaGunda
Microsoft Alias: sngun

@antstanley Thanks for the feedback. We are actively investigating and will get back to you soon.

@antstanley This is being assigned to the content author to evaluate and update as appropriate. Thank you!

@SnehaGunda Is there a content strategy to walk customer's through the versioning issue so that there is greater awareness of the breaking changes that will occur between v2 and v3? Thanks!

@Mike-Ubezzi-MSFT just got back from vacation this week, I wasn't aware of the V3 SDK release. I will be working with the team on sample and doc updates.

@TravisCragg-MSFT The PRs above refreshes the docs with the V3 SDK. They should be merged tomorrow.
We will now close the issue if there aren't further questions.
#please-close


Auth Single Page App

The user can order with or without logging in, but the user must log in to proceed with the payment or other actions && and Login in client


Expose location changing event for NavigationManager

https://github.com/dotnet/aspnetcore/issues/14962

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

ID: 35474d24-8039-f04a-de14-1530b8e8506c
Version Independent ID: b6cb2574-6326-a40d-0b6c-d1661328e828
Content: ASP.NET Core Blazor routing
Content Source: aspnetcore/blazor/fundamentals/routing.md
Product: aspnet-core
Technology: aspnetcore-blazor
GitHub Login: @guardrex
Microsoft Alias: riande

CUT by PU


Update PPP: sikai00

Unfortunately a small code quality commit is also included. But shouldn't affect anything.
This PR is to complete the weekly deliverables.

Codecov Report
Base: 60.32% // Head: 60.54% // Increases project coverage by +0.21% :tada:

Coverage data is based on head (3c0009a) compared to base (e25e21b).
Patch coverage: 0.00% of modified lines in pull request are covered.

Additional details and impacted files
@@             Coverage Diff              @@
##             master     #296      +/-   ##
============================================
+ Coverage     60.32%   60.54%   +0.21%
  Complexity      620      620
============================================
  Files           113      113
  Lines          2256     2248       -8
  Branches        249      248       -1
============================================
  Hits           1361     1361
+ Misses          814      806       -8
  Partials         81       81

Impacted Files
Coverage Δ

src/main/java/seedu/address/ui/MainWindow.java
0.00% <0.00%> (ø)

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

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


Uncaught TypeError: Cannot read property '$destroy' of undefined

Internals of this module throw TypeError exception while modal is being dismissed
cleanUp	@	angular-fancy-modal.js:96
(anonymous function)	@	angular-fancy-modal.js:127
eventHandler	@	angular.js:3032

My controller:
    .controller('SessionCtrl', function ($scope, $fancyModal) {
        var modalOpt = {
            templateUrl: 'views/session/greeting.html'
        };
        $fancyModal.open(modalOpt);
    });

debugger says that $modal.scope() returns undefined
BTW, I'm experiencing that while using angularjs 1.3.15

could you please set up a jsfiddle?

Yeah, sure: http://embed.plnkr.co/DpTYA4cOh44iwKeXNdef/
I'm almost sure it's related to the debug info. It will work if you will remove this block:
app.config(function ($compileProvider, $logProvider) {
  $compileProvider.debugInfoEnabled(false);
  $logProvider.debugEnabled(false);
});

Check out changes between 1.3.x and 1.2.x for angular.element: https://code.angularjs.org/1.3.3/docs/api/ng/function/angular.element

I guess it's because
$compileProvider.debugInfoEnabled(false);

This line basically makes impossible to retrieve the scope from an angular.element for some reason.
I also see this.
https://docs.angularjs.org/guide/production#disabling-debug-data
Probably the only solution is to avoid getting the scope from DOM element.
To do so I should probably keep track of created scope in some different way.

yeah this will be breaking change if this module wants to be compatible with 1.3.x
maybe you could track $destroy event of that DOM element instead (it's available even with debug info disabled)

what do you mean?


fix vulnerabilities

remove bootstrap and bump lodash

https://github.com/gulp-sourcemaps/gulp-sourcemaps/commit/3aab5193f51f385028413ea543689329bb349165


Added theme toggle issue #97

This pull request adds a convenient theme toggler button to the top of the page, allowing users to easily switch between light and dark mode. The button is visually appealing and seamlessly integrates with the existing page design.
Key features:
Easy access: The button is prominently placed at the top of the page for quick and effortless switching.
Visually appealing: The button has a modern and clean design that complements the overall aesthetic of the page.
Responsive design: The button adapts well to different screen sizes, ensuring a consistent user experience across devices.
Smooth transition: Switching between themes is accompanied by a smooth and visually pleasing animation.
User preference storage: The user's preferred theme is stored locally, ensuring a personalized experience upon return visits.
Benefits:
Enhanced user experience: Allows users to customize the page's appearance to their preference, improving readability and comfort.
Accessibility: Provides a more accessible experience for users with visual impairments or sensitivities to bright light.
Modern aesthetic: Adds a touch of sophistication and modernity to the page design.
Installation:
Merge this pull request into your project.
Rebuild and deploy your application.
Usage:
Click the theme toggler button to switch between light and dark mode.
Your preferred theme will be automatically saved for future visits.
I hope this description is helpful! Let me know if you have any other questions..                                                                                Also there are no conflicts now

I think there is no need of dard mode

Wow so quick of you to come to this conclusion.
Thank you

Sorry for the inconvenience. Thank you for being our valuable contributor


[Question] Storing hooks and config files in external repo

I am using reusable workflows stored in a common repo for many of my actions, and would like to store the config file and hooks files in this repo. Is there any way to do this?

If I understand your correctly I don't think this is possible since the files need to be in the repo it checks out.

@TriPSs  Thanks for the reply, hope that GitHub provides such functionality in future. As of now, I am using a composite action that wraps this action and uses github.action_path to find config files, both my composite action and reusable workflows are stored in the same repo.
Closing this issue since the workaround is good enough for now.


Tracker.TrackedReal{Float64} not supported

the above error is thrown by defninitions.jl:22 when attempting to use TrackedArray or TrackedReal from Flux.jl. Is there any chance we can add this so that we can use differentiable fft algorithms?

FFTs are linear, so it's much simpler to just define custom derivatives than to try to differentiate through the FFT algorithm


Error on local setup

Hello 👋
In following development.md to run the Server locally, I'm getting the following error below when starting the Server. Would you have any advice for me to troubleshoot further?
Repro:

Clone repo
cd server
npm install
npm run install-model Vicuna-7B
npm start

Error:
zsh: segmentation fault  npm start
Node- v18.16.0
System Version: macOS 13.3.1
client/catai runs just fine!
What's odd is that I run llama-node inference.js just fine on this Mac.
Installing globally and using catai serve also works without error.

Currently I am creating a new way to install models.
A work around is to copy full URL from model-links.json
npm run install-model https://my-model-link

The new way takes the models from models.json which is not fully checked  as of this moment.

OK cool - looking forward to the new way to install models. 👍
My goal would be to try out this ggmlv3 https://huggingface.co/TheBloke/WizardLM-7B-uncensored-GGML/tree/main

ggmlv3 is supported now :)


Make true absolute imports relative to source roots work

Suggestion

🔍 Search Terms

absolute import

✅ Viability Checklist

My suggestion meets these guidelines:

[x] This wouldn't be a breaking change in existing TypeScript/JavaScript code
[x] This wouldn't change the runtime behavior of existing JavaScript code
[x] This could be implemented without emitting different JS based on the types of the expressions
[x] This isn't a runtime feature (e.g. library functionality, non-ECMAScript syntax with JavaScript output, new syntax sugar for JS, etc.)
[x] This feature would agree with the rest of TypeScript's Design Goals.

⭐ Suggestion

The code import foo from '/foo';
should import {sourceRoot}/foo
where sourceRoot is {pwd}/src
all configurable via tsconfig.json.
📃 Motivating Example
It just seems obvious to me that /foo means ./src/foo relative to the project root, assuming src is the root source dir.

💻 Use Cases
I was pretty sure we could do this? I vaguely remember doing this like 4-5 years ago in VS Code in a TypeScript project? But I can't find any code to do this. Everything I find online says either import "@foo/etc" or "foo/etc"

Since TypeScript doesn’t change import specifiers in the emitted JS (even with paths), import … from "/foo" means whatever it means at runtime.  In the browser it’s relative to the current subdomain; in Node I assume it’d be relative to the file system root, if it works at all.

I have a runtime where it works as I described above.

If your runtime supports it then adding this to tsconfig should do the trick:
        "paths": {
            "/*": [ "./src/*" ]
        },

I have that, and in VS Code, auto-complete in the path and double-click on the path does nothing.

That works for when auto-importing from an absolute path. But it doesn't work when ctrl-clicking an absolute path, it doesn't find it in VS Code.
That said, I don't use this feature of my runtime anymore since the absolute paths don't seem to auto-import (and it's generally not very helpful). So feel free to close this.


RAPL seems to overstate the power usage by a factor of two

Brief description of your issue
On two systems: a desktop with i5-12600K and a laptop with i5-1145G7 I feel like the total usage is a sum of all CPU power domains and the package power, which is already a sum of all the power domains. This correlates with my own comparisons to other software (HWiNFO), which seem to report about a half of what's reported by System Informer.
Steps to reproduce (optional)
Enable RAPL device in settings. Go to "System information". Look up the maximum power level of your CPU, perhaps use a kill-a-watt (AC power meter), or compare with some other software. Stress your CPU. Evaluate for yourself whether you believe the measurements. Seeing values nearing 70 watts on a small laptop with 28 W CPU and a 65 W power brick is what made me suspicious.
Expected behavior (optional)
Total power should equal package power, I think.
Actual behavior (optional)

Environment (optional)
Windows 11 23H2 22631.3155
MSI PRO Z690-A DDR4
Intel Core i5-12600K
System Informer 3.0.7479 (fe48085)

the total usage is a sum of all CPU power domains and the package power, which is already a sum of all the power domains.

That's how it's calculated by the intelppm.sys kernel driver:
https://learn.microsoft.com/en-us/windows-hardware/drivers/powermeter/energy-meter-interface
The driver calculates the values and we just report what's provided by the driver. You can compare the counters with powershell:
Get-Counter "\Energy Meter(_Total)\Energy"
Get-Counter "\Energy Meter(RAPL_Package0_PKG)\Energy"

other software (HWiNFO), which seem to report about a half of what's reported by System Informer.

RAPL is a running average power usage and you're going to see different values reported depending on the version of  intelppm.sys and also starting 2022 the RAPL interface has severely limited sampling rate, low sampling frequency, and low resolution depending if SGX is enabled or disabled and also the microcode version: https://www.intel.com/content/www/us/en/developer/articles/technical/software-security-guidance/advisory-guidance/running-average-power-limit-energy-reporting.html

I don't understand how a lowered sample rate and resolution lead to +100% error, consistent all the time and across two platforms. The values sound improbable, especially the 300 watts at full load. Not impossible though, because i9 does exist and would technically fit my mobo.
I've tested the Get-Counter method while loading the CPU with y-cruncher's small in-cache FFT. It's a stress test known for exceptionally high CPU core power utilization. The results were around 150 W in Get-Counter and all other apps, 300 W in System Informer. FWIW, Intel says in this document that HWiNFO and CPU-Z also get their data from RAPL.
My understanding is that the values (core+package) are being added in lines 296-298 of power.c. I believe that the package power (CurrentProcessorPower I think?) is already a sum of several values which include core. From electronic engineering standpoint, It would make no sense that the package itself, not its contents, would use power.