Suject display badly in some client with french character

Q
A

Bug report?
no

Feature request?
no

RFC?
no

How used?
Symfony

Swiftmailer version
6.0.2

PHP version
7.0.23

Observed behaviour

Generated by switfmailer ( incorrect display in some client, ex: yopmail )
Subject: Avis de =?UTF-8?Q?d=C3=A9p=C3=B4t?= RE00112233 -\r\n
 =?UTF-8?Q?xxx=C3=A9=2Ecom?=\r\n

Expected behaviour

Generated by thunderbird ( show correctly in yopmail and other client )
Subject: =?UTF-8?Q?Avis_de_d=c3=a9p=c3=b4t_RE00112233_-_xxx=c3=a9.co?=
 =?UTF-8?Q?m?=

Example

        $charset = "UTF-8";
        \Swift_Preferences::getInstance()->setCharset($charset);

        $concreteEmail = new \Swift_Message();
        $concreteEmail->setCharset($charset);
        $concreteEmail->setSubject("Avis de dépôt RE00112233 - xxxé.com");
        // add other fields

        $mailer = $this->get("@mailer");
        $mailer->send($concreteEmail);

To see the issue, just "Show source" (View -> Headers in Yopmail.com) of the email you just received, you'll see the 'bad' encoded subject.
Is there any way to force the subject to be 'correctly' encoded for platform like Yopmail ? Why email via SwiftMailer produce different data than email from heavy client like Thunderbird ?

I should create a custom CustomHeader
class CustomHeader extends \Swift_Mime_Headers_UnstructuredHeader
{
    protected function getEncodableWordTokens($string)
    {
        return array($string);
    }
}

Now I use this to set the subject
// Change the subject
$headers = $concreteEmail->getHeaders();
$olderEncoder = $headers->get('Subject')->getEncoder();
$headers->set(new CustomHeader('Subject', $olderEncoder));
$headers->get('Subject')->setValue($subject);

it's work but i don't know if it the simpless way or not


Add support for PathBase in Aspnetcore

Hey there!
I've noticed that currently, when using telemetry in AspNetCore, Request.PathBase is not used to log the requested uri (see PathBase usage here)
I've changed the HttpRequestExtensions.GetUri method to add it to the concat and added a test accordingly.
Regards,

/AzurePipelines run

/AzurePipelines run

/AzurePipelines run


Update TestEdge chain ID

Actual TestEdge chain ID is haqq_54211-2

Closes: #XXX
Description
This PR will update TestEdge chain ID from haqq_53211-1 to actual haqq_54211-2

For contributor use:

[ ] Targeted PR against correct branch (see CONTRIBUTING.md)
[ ] Linked to Github issue with discussion and accepted design OR link to spec that describes this work.
[ ] Code follows the module structure standards.
[ ] Wrote unit and integration tests
[x] Updated relevant documentation (docs/) or specification (x/<module>/spec/)
[ ] Added  relevant godoc comments.
[ ] Added a relevant changelog entry to the Unreleased section in CHANGELOG.md
[ ] Re-reviewed Files changed in the Github PR explorer

For admin use:

[ ] Added appropriate labels to PR (ex. WIP, R4R, docs, etc)
[ ] Reviewers assigned
[ ] Squashed all commits, uses message "Merge pull request #XYZ: [title]" (coding standards)

haqq_54211-3 now

Ok, already update all needed info in docs


Flutter has weird bottom padding space in NestedScrollView class example

I just copy the example code in NestedScrollView class and it has a small space bottom padding in my app.
class DemoTab extends StatefulWidget {
  @override
  DemoState createState() => DemoState();
}

class DemoState extends State<DemoTab> {
  double maxScroll = 0.0;
  List<String> _tabs = List.generate(3, (i) => "$i");

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body:  new DefaultTabController(
          length: _tabs.length, // This is the number of tabs.
          child: new NestedScrollView(
            headerSliverBuilder:
                (BuildContext context, bool innerBoxIsScrolled) {
              // These are the slivers that show up in the "outer" scroll view.
              return <Widget>[
                new SliverOverlapAbsorber(
                  // This widget takes the overlapping behavior of the SliverAppBar,
                  // and redirects it to the SliverOverlapInjector below. If it is
                  // missing, then it is possible for the nested "inner" scroll view
                  // below to end up under the SliverAppBar even when the inner
                  // scroll view thinks it has not been scrolled.
                  // This is not necessary if the "headerSliverBuilder" only builds
                  // widgets that do not overlap the next sliver.
                  handle:
                      NestedScrollView.sliverOverlapAbsorberHandleFor(context),
                  child: new SliverAppBar(
                    title: const Text('Books'),
                    // This is the title in the app bar.
                    pinned: true,
                    expandedHeight: 150.0,
                    // The "forceElevated" property causes the SliverAppBar to show
                    // a shadow. The "innerBoxIsScrolled" parameter is true when the
                    // inner scroll view is scrolled beyond its "zero" point, i.e.
                    // when it appears to be scrolled below the SliverAppBar.
                    // Without this, there are cases where the shadow would appear
                    // or not appear inappropriately, because the SliverAppBar is
                    // not actually aware of the precise position of the inner
                    // scroll views.
                    forceElevated: innerBoxIsScrolled,
                    bottom: new TabBar(
                      // These are the widgets to put in each tab in the tab bar.
                      tabs: _tabs
                          .map((String name) => new Tab(text: name))
                          .toList(),
                    ),
                  ),
                ),
              ];
            },
            body: new TabBarView(
              // These are the contents of the tab views, below the tabs.
              children: _tabs.map((String name) {
                return new SafeArea(
                  top: false,
                  bottom: false,
                  child: new Builder(
                    // This Builder is needed to provide a BuildContext that is "inside"
                    // the NestedScrollView, so that sliverOverlapAbsorberHandleFor() can
                    // find the NestedScrollView.
                    builder: (BuildContext context) {
                      return new CustomScrollView(
                        // The "controller" and "primary" members should be left
                        // unset, so that the NestedScrollView can control this
                        // inner scroll view.
                        // If the "controller" property is set, then this scroll
                        // view will not be associated with the NestedScrollView.
                        // The PageStorageKey should be unique to this ScrollView;
                        // it allows the list to remember its scroll position when
                        // the tab view is not on the screen.
                        key: new PageStorageKey<String>(name),
                        slivers: <Widget>[
                          new SliverOverlapInjector(
                            // This is the flip side of the SliverOverlapAbsorber above.
                            handle: NestedScrollView
                                .sliverOverlapAbsorberHandleFor(context),
                          ),
                          new SliverPadding(
                            padding: const EdgeInsets.all(8.0),
                            // In this example, the inner scroll view has
                            // fixed-height list items, hence the use of
                            // SliverFixedExtentList. However, one could use any
                            // sliver widget here, e.g. SliverList or SliverGrid.
                            sliver: new SliverFixedExtentList(
                              // The items in this example are fixed to 48 pixels
                              // high. This matches the Material Design spec for
                              // ListTile widgets.
                              itemExtent: 48.0,
                              delegate: new SliverChildBuilderDelegate(
                                (BuildContext context, int index) {
                                  // This builder is called for each child.
                                  // In this example, we just number each list item.
                                  return new ListTile(
                                    title: new Text('Item $index'),
                                  );
                                },
                                // The childCount of the SliverChildBuilderDelegate
                                // specifies how many children this inner list
                                // has. In this example, each tab has a list of
                                // exactly 30 items, but this is arbitrary.
                                childCount: 30,
                              ),
                            ),
                          ),
                        ],
                      );
                    },
                  ),
                );
              }).toList(),
            ),
          ),
        ),
    );
  }
}

Flutter doctor:
Doctor summary (to see all details, run flutter doctor -v):
[√] Flutter (Channel beta, v0.5.1, on Microsoft Windows [Version 10.0.17134.165], locale en-US)
[√] Android toolchain - develop for Android devices (Android SDK 27.0.3)
[√] Android Studio (version 3.1)
[!] IntelliJ IDEA Community Edition (version 2018.1)
    X Flutter plugin not installed; this adds Flutter specific functionality.
[√] Connected devices (1 available)

! Doctor found issues in 1 category.

@phucgaoxam How did you fix this?

I have this problem aswell. Cant seem to remove the padding, Not even with MediaQuery.removePadding on any part in this example.

I fixed this issue by switching to the master branch of Flutter. It seems to be fixed

@phucgaoxam can you share how did u resolve this?

The tabview height is the same screen's height. So you just need to check if the list's height and the header's height is smaller than screen's height, you can block the scrolling.


Metadata for funding agency

Can one of the admins verify this patch?

@hyi Can you review?

@hyi and @horsburgh As @dtarb  mentioned during the call today that we should not worry about duplicate funding agency issue, I am thinking not to implement additional validation as discussed above.

Should I remove the validations in place for Award Number?

@mauriel133 No keep whatever validation we have already implemented. I am talking about additional validation that @hyi and @horsburgh suggested as part of this PR review comments.

@pkdash @horsburgh I am ok with not doing it, if @horsburgh is also OK with it, I can give +1 to this PR unless @mauriel133 wants to put in some bug fix on front end.

I can not reproduce the error that showed up today anymore. I don't know why it happened, but I'll address it later if it shows up again. We can get this PR going.

@mauriel133 You can deploy it one of the VMs through Jenkins and see if the error shows up there.

It would be nice to see this deployed for a quick test, but I'm OK without the additional validation.

+1 from me from code review perspective then. @pkdash @mauriel133 You can merge it in as you see fit, for example, after having this deployed for a quick test.

I have started deployment on testservices.hydroshare.org.

@horsburgh You should be able test it now on testservices.hydroshare.org.

@horsburgh I will merge this PR once I hear your testing results.

@pkdash - I'm testing now on testservices.hydroshare.org.  I see the Extended Metadata tab, but not the funding agency credits stuff.  Am I in the right place or did the wrong branch get deployed?

@horsburgh You are at the right site. Under the 'Extended MetadData' tab, you should see a button 'Add new entry' . Click that button in order to enter a new pair of key/value data in a modal form. Once you enter data and click on 'OK button, click on the 'Save Changes' button that appears on the landing page under the table that list the key/value data.

@pkdash - This issue is specific to funding agency metadata so I thought I was supposed to be testing the funding agency credits - not the extended metadata.

@horsburgh oops. I will redeploy and let you know.

@horsburgh Try now.

@pkdash and @mauriel133 - there are two minor issues that I found.

[ ]  Right now you have validation that checks to make sure I don't add the exact same funding agency credit twice. For example if I add "NSF" as Agency Name and then try to add "NSF" as Agency Name again (not filling out any of the other fields), it pops up a message in red that says:

It should say something like "You cannot create identical funding agency credits." to avoid confusion. In this case it really has nothing to do with the award number (which is what the error says).

[ ] If I try to add a new record with only "Agency Name" that is the same as one I already have, it throws the above error. When I add an "Award Title" to the second one I am trying to add (which would make it a different record) it won't save it until I change the "Agency Name". Two records (one with agency name only, and one with the same agency name but also with an award title) are different and should be allowable. You could just get rid of all validation except enforcing that the combination of all 4 fields should be unique. Then let them do what they want.

Otherwise, looks good to me.

@mauriel133 I think it is mostly your front-end validation.

Yes, I'll take care of that right now. I'll go with Jeff's suggestion for the validations.

@pkdash, I have now implemented front end validations according to @horsburgh 's observations. The validation now checks for the entry to be unique (combination of Agency Name, Award Title and Award Number).
The back end validation needs to be changed to match this one.

@mauriel133 I will leave the back-end as it is since we decided not to care that much about duplicate funding agency at least for now.

A back end error shows up when trying to submit an entry with same Agency Names, arbitrary values for Award Title and no value for Award Number. This case should be allowed.

@mauriel133 OK.  The only thing required to create a funding agency name. The back end no more checks for any duplicate data. It will be possible to create 2 or more funding agencies with exactly the same data for all attributes of funding agency. I know you have implement some restriction on the front end and I think that is fine for now.

@horsburgh I have now redeployed with @mauriel133 changes in case you want to do another round of test.

@hyi Since I have removed database level constraints, you may want to review that change.

+1

@horsburgh Let me know if I should wait to merge until you are done with testing.

I hate to be nit picky, but it looks like there's still an issue with validation.  I just created a new record that had the exact same Agency Name, Award Title, and Award Number as a previous entry (where the previous entry does not have an Agecy URL), but then specified an Agency URL for the new record and it told me that the entry already existed. It should let me create this record since it has a different Agency URL.
So, it looks to me like you are enforcing uniqueness across the first three fields, but not the fourth.

The only validation at the back end is that the 'agency name' can't be null/empty. There is no custom constraints at the database level for funding agency. @mauriel133 it seems an issue with the front-end validation.

I see, I didn't include the agency URL in the validation because I assumed only the other 3 fields needed to be considered for uniqueness. I will update the code now.

@pkdash, the code has been updated now.

@horsburgh Have redeployed with @mauriel133 latest changes for validation.

I just did one more round of testing all looks correct to me.
+1 from me


ObjectAsConstructor.cs:10-11: Need to create...

The puzzle 60m-92217446 from #60m has to be resolved:
https://github.com/DenisZhukovski/ObjectToTest/blob/a71177700f9cf6be6308f67af98abc8fbc53fbfa/src/ObjectAsConstructor.cs#L10-L11
The puzzle was created by Denis Zhukovski on 05-Sep-22.
role: ARCH.
If you have any technical questions, don't ask me, submit new tickets instead. The task will be "done" when the problem is fixed and the text of the puzzle is removed from the source code. Here is more about PDD and about me.

@0pdd the puzzle #63 is still not solved.

The puzzle 60m-92217446 has disappeared from the source code, that's why I closed this issue.

@0pdd the only puzzle #63 is solved here.


Unable to get the files in data and models

I am unable to get the files in the data folder and files in models folder.

You should follow the instructions in the README file.
You can download the data from the following link.
http://visionandlanguage.net/VIST/dataset.html
You can also download the pretrained model from the following link.
https://drive.google.com/drive/folders/10vBPeETCKZfdOr2zenB_WlmKDcRBHmYR?usp=sharing

hello,thank you for your excellent job on VIST,and i very want to reproduced your project.
i follow the instruction in the README file,because the VIST dataset is big ,so i want to download the pretrained model above.
Can i ask you two question?
①.Which folder should I put the downloaded files in?
②.Can i start training directly next to run python3 train.py?
I am so sorry to bother you and i hope you can give me some useful advice?
@tkim-snu

the file directory is model,misc,data,Which folder should I put the downloaded files(decoder-0.pkl,encoder-0.pkl,vocab.pkl) in?
I am so sorry to bother you !

I have solved the problem,sorry to bother you.


Uncaught (in promise) TypeError: store.dispatch is not a function createLoader.js:12

I just started to use it
import thunk from 'redux-thunk'
import * as storage from 'redux-storage'
import createEngine from 'redux-storage-engine-localstorage'

let storageMiddleware = storage.createMiddleware(engine)
let middleware = applyMiddleware(storageMiddleware, thunk)

const appReducer = storage.reducer(combineReducer({...}))

const store = middleware(createStore)(appReducer, {})

const load = storage.createLoader(engine)
load(storage).then(() => console.log('[storage] loaded'))

The problem here is that you passed the wrong variable into load() :smile:
storage.createLoader creates a new loader-function bound to the given engine. So it does know where to load from but not where to dispatch to. This is why you need to pass the target store (not storage!) as argument every time you want to load from the bound engine.
TL;DR: Just replace:
load(storage).then(() => console.log('[storage] loaded'))

with:
load(store).then(() => console.log('[storage] loaded'))

:sunglasses:

thanks! @michaelcontento


Update device code supported tenants (authentication-flows-app-scenarios.md)

Device code is said to on other pages, and I've confirmed in testing, support all tenant types now, including common, consumers, and organizations.

@JeremyTBradshaw : Thanks for your contribution! The author(s) have been notified to review your proposed change.

#sign-off


Slider: Should have a name prop that is passed to the input element

Provide a general summary of the feature here
Currently the <Slider> component in React-Aria-Components does not allow to set the name property for the underlying input element, which means it can not be used with a native form to send form data.
🤔 Expected Behavior?
allow for a name prop and pass it to the underlying <input type="range"/> element.
😯 Current Behavior
no name prop
💁 Possible Solution
explained in the expected behaviour section
🔦 Context
I am trying to use the <Slider> component but i am relying on the name property on input elements to send form data to my API endpoint, currently it is not possible to set the name property on the underlying input element, making it impossible to use the Slider component in my form without the values being ignored.
💻 Examples
No response
🧢 Your Company/Team
No response
🕷 Tracking Issue
No response

Since a Slider can have multiple thumbs, the name prop is on the SliderThumb instead. See https://react-spectrum.adobe.com/react-aria/Slider.html#html-forms

oh wow, no idea how i missed that, thanks!


DOC: Examples for btdtr, btdtri

Reference issue
#7168
What does this implement/fix?
Examples for:

special.btdtri
special.btdtr

Not a review at the moment, but just an advance notice that I'm working on a pull request that will replace the current Cephes-based backend for betainc and betaincinv with Boost.  Now btdtr and btdtri are basically the exact same functions, respectively, so in that PR, I'm currently planning on making them aliases (i.e. betainc == btdtr and betaincinv == btdtri).  If that gets merged, the separate docstrings of btdtr and btdtri will no longer exist.

Thanks for the heads up, will leave this open though in case you would like to reuse some of this.


throws an error if the extends resolves to a JS file

Hi!
This code looks for require.resolve result - and only if that's not found does it try path.join(extendsPath, 'tsconfig.json').
The problem is what if require.resolve resolves to an index.js file. Then we try using that instead of path.join(extendsPath, 'tsconfig.json').
Then we try to read the JSON file. But it's JS not JSON, so we throw an error.
Example:
"extends": "@company/tsconfig"

@company/tsconfig package.json:
"main": "./src/index.js"

@company/tsconfig tsconfig.json
{
  // normal tsconfig.json
}

To resolve this we should do the resolving closer to how TypeScript does it. In this case, it would never resolve a .JS file, only .json. Perhaps if the filename is not .json we then attempt path.join(extendsPath, 'tsconfig.json').

Is this a real issue you're encountering?
It currently throws if not a valid JSON:
https://github.com/privatenumber/get-tsconfig/blob/58a696ce9b775f1988b69e06410f40b48c975054/tests/specs/extends.spec.ts#L22-L34

Yes - it throws if it's not valid JSON, but what I'm hoping for is that it prioritizes using the tsconfig.json in that path instead of the index.js.
I'm running into this when using tsx in our monorepo. We have a company-standard tsconfig package that has /tsconfig.json and a main pointing to /src/index.js.

Gotcha.
Do you mind opening a PR with a failing test case?

Failing test created.
BTW - the test framework throws an error but passes if the test JS doesn't compile. 😅

BTW - the test framework throws an error but passes if the test JS doesn't compile. 😅

What does this mean?


lspsaga finder bug in NVIM v0.8.0-dev-973-g253f0ffd8d

finder is not work
https://user-images.githubusercontent.com/97107165/187162617-3c3c2d25-e3ce-4b89-8fe6-e4dbb8235002.mp4

had fixed

bravo!


Issue when configuring

Hi, I have an issue while configuring the share.
[mons@arch-desktop ~]$ onedrived-pref --help
Traceback (most recent call last):
  File "/usr/bin/onedrived-pref", line 6, in <module>
    from pkg_resources import load_entry_point
  File "/usr/lib/python3.6/site-packages/pkg_resources/__init__.py", line 3036, in <module>
    @_call_aside
  File "/usr/lib/python3.6/site-packages/pkg_resources/__init__.py", line 3020, in _call_aside
    f(*args, **kwargs)
  File "/usr/lib/python3.6/site-packages/pkg_resources/__init__.py", line 3049, in _initialize_master_working_set
    working_set = WorkingSet._build_master()
  File "/usr/lib/python3.6/site-packages/pkg_resources/__init__.py", line 654, in _build_master
    ws.require(__requires__)
  File "/usr/lib/python3.6/site-packages/pkg_resources/__init__.py", line 968, in require
    needed = self.resolve(parse_requirements(requirements))
  File "/usr/lib/python3.6/site-packages/pkg_resources/__init__.py", line 854, in resolve
    raise DistributionNotFound(req, requirers)
pkg_resources.DistributionNotFound: The 'psutil' distribution was not found and is required by onedrived

This happens every time i call onedrive-pref command.
I'm running Arch Linux with the last version of Python3 and installed onedrived-dev via AUR.
Thank you in advance for taking care of this.

sudo pip3 install psutil

Solved. It was a bug on the AUR package not on the program. Installing via PIP it works. Sorry for the question and thank you for the useful software you wrote.

Turns out the AUR package is missing a lot of dependencies, and some of them have PKGBUILDs that need fixing. Install via PIP until I or someone else gets time to fix everything.


hash collision causing timeline display glitch

Hi, I'm seeing very strange hw execution times that doesn't make sense, and it even appears that the two jobs are executing on the same hw queue at the same time. so I did some debugging and found out that it's a hash collision at gpuvis.cpp:2048 get_event_gfxcontext_hash( event );
I added some printouts and this is some collisions I found
gfx_0.0.0_9057436_589 =><PHONE_NUMBER>
comp_1.3.0_9399661_76 =><PHONE_NUMBER>
gfx_0.0.0_9057436_586 => 936496110
comp_1.3.0_9399661_79 => 936496110
gfx_0.0.0_9266264_182 =><PHONE_NUMBER>
gfx_0.0.0_1_4515358 =><PHONE_NUMBER>
comp_1.1.1_9147603_373 => 237847852
comp_1.3.1_9_295083 => 237847852

can the implementation switch to using an more robust key value pair system? maybe just std::map

Hi Yunxiali. Could you try this commit:
https://github.com/mikesart/gpuvis/commit/f7f7cb5554ef20a8f8d19a7dd15af3af6482777b
And let me know how it works for you? And you're right, we can for sure improve the hashing and map stuff in here. Hopefully / maybe this is a quick fix that'll help get you back running and I'll look at those other things down the road.
Thanks much for the great info above.

I ran across this Robin Hood Hashing thing about a year ago when writing a ctags tool and it seems far faster than the standard map stuff. I think for this I should just switch to a map and return the index as you pointed out previously. I'm a bit hammered at real work but will try to get to this. If you have any good datasets to test with please send them my way. Thanks yunxiali.

collision_test.gz
here's some strings I extracted

Got it. I have a break next week and will look at this then. Thanks again!

Can you try the issue77 branch when you get a chance? Switched everything to 64-bit hash values... thanks!

I'm no longer seeing collisions with the 64 bit hash, I guess it's still good to check and warn for collision if one comes up, here's the patch I've been using to detect these, maybe something similar can be added too. Thanks for working on this!
diff --git a/src/gpuvis.cpp b/src/gpuvis.cpp
index fc5dd32..0e39f53 100644
--- a/src/gpuvis.cpp
+++ b/src/gpuvis.cpp
@@ -2047,6 +2047,7 @@ void TraceEvents::init_amd_timeline_event( trace_event_t &event )
 {
     uint32_t gfxcontext_hash = get_event_gfxcontext_hash( event );
     const char *timeline = get_event_field_val( event, "timeline" );
+    const char *context = get_event_field_val( event, "context" );

     // Add this event under the "gfx", "sdma0", etc timeline map
     m_amd_timeline_locs.add_location_str( timeline, event.id );
@@ -2064,6 +2065,17 @@ void TraceEvents::init_amd_timeline_event( trace_event_t &event )
         // Event right before the event we judiff --git a/src/gpuvis.cpp b/src/gpuvis.cpp
index fc5dd32..0e39f53 100644
--- a/src/gpuvis.cpp
+++ b/src/gpuvis.cpp
@@ -2047,6 +2047,7 @@ void TraceEvents::init_amd_timeline_event( trace_event_t &event )
 {
     uint32_t gfxcontext_hash = get_event_gfxcontext_hash( event );
     const char *timeline = get_event_field_val( event, "timeline" );
+    const char *context = get_event_field_val( event, "context" );

     // Add this event under the "gfx", "sdma0", etc timeline map
     m_amd_timeline_locs.add_location_str( timeline, event.id );
@@ -2064,6 +2065,17 @@ void TraceEvents::init_amd_timeline_event( trace_event_t &event )
         // Event right before the event we just added.
         auto it = plocs->rbegin() + 1;
         const trace_event_t &event_prev = m_events[ *it ];
+        const char *prev_context = get_event_field_val( event_prev, "context" );
+        const char *prev_timeline = get_event_field_val( event_prev, "timeline" );
+        if ( ( context && prev_context && strcmp( context, prev_context ) ) ||
+             ( timeline && prev_timeline && strcmp( timeline, prev_timeline ) ) ||
+             ( event.seqno != event_prev.seqno ) )
+        {
+            printf( "Hash collision!!!!\n" );
+            printf( "%s_%s_%u => %lu\n", prev_timeline, prev_context, event_prev.seqno, gfxcontext_hash );
+            printf( "%s_%s_%u => %lu\n", timeline, context, event.seqno, gfxcontext_hash );
+            return;
+        }

         // Assume the user comm is the first comm event in this set.
         event.user_comm = event0.comm;
st added.
         auto it = plocs->rbegin() + 1;
         const trace_event_t &event_prev = m_events[ *it ];
+        const char *prev_context = get_event_field_val( event_prev, "context" );
+        const char *prev_timeline = get_event_field_val( event_prev, "timeline" );
+        if ( ( context && prev_context && strcmp( context, prev_context ) ) ||
+             ( timeline && prev_timeline && strcmp( timeline, prev_timeline ) ) ||
+             ( event.seqno != event_prev.seqno ) )
+        {
+            printf( "Hash collision!!!!\n" );
+            printf( "%s_%s_%u => %lu\n", prev_timeline, prev_context, event_prev.seqno, gfxcontext_hash );
+            printf( "%s_%s_%u => %lu\n", timeline, context, event.seqno, gfxcontext_hash );
+            return;
+        }

         // Assume the user comm is the first comm event in this set.
         event.user_comm = event0.comm;

Could you check if something like this catches collisions for you? Thanks!
diff --git i/src/gpuvis.cpp w/src/gpuvis.cpp
index e061a5c..d39ba88 100644
--- i/src/gpuvis.cpp
+++ w/src/gpuvis.cpp
@@ -1912,6 +1912,26 @@ const tgid_info_t *TraceEvents::tgid_from_commstr( const char *comm )
     return NULL;
 }

+static void check_for_gfxcontext_hash_collision( uint64_t hashval, const char *buf )
+{
+#ifdef DEBUG
+    static util_umap< uint64_t, std::string > s_hashedstrs;
+
+    std::string *str = s_hashedstrs.get_val( hashval );
+    if (str)
+    {
+        if (*str != buf)
+        {
+            logf("[Warning]: Hash collision 0x%lx %s %s\n", hashval, buf, str->c_str());
+        }
+    }
+    else
+    {
+        s_hashedstrs.set_val( hashval, std::string( buf ) );
+    }
+#endif
+}
+
 uint64_t TraceEvents::get_event_gfxcontext_hash( const trace_event_t &event )
 {
     if ( is_msm_timeline_event( event.name ) )
@@ -1932,9 +1952,14 @@ uint64_t TraceEvents::get_event_gfxcontext_hash( const trace_event_t &event )
         if ( timeline && context )
         {
             char buf[ 128 ];
+            uint64_t hashval;

             snprintf_safe( buf, "%s_%s_%u", timeline, context, event.seqno );
-            return hashstr64( buf );
+
+            hashval = hashstr64( buf );
+            check_for_gfxcontext_hash_collision( hashval, buf );
+
+            return hashval;
         }
     }


Use formatter for searchstring

Manually constructing a searchstring for every document is silly, because:

They're really formulaic, and this takes up space
Sometimes I want to use information that won't be on hand until later data joins are accomplished.

So it should be possible to create a bookworm with no search string, and add it later.
Here's a gist with code for making the ChronAm searchstrings after the fact; a later edition will be even better, since it will be able to give the paper titles (not part of the raw metadata bundle, which only gives unreadable LOC identifiers).

I really like this idea, I have not added search string to the documents in the hope that the user can receive a search string with perhaps a title and url in context to the word[s] they searched for.


Store/Show URL of the i-Frame in parameter of parent Page containing the iframe?

Sorry this is more a question than a bug report.
Is there a way to store the current i-Frame URL somehow in the URL of the page where the i-Frame is hosted?
Example:
Webpage A = "a.com" The wepage hosting the i-frame
Webpage F = "f.com" The webpage shown inside the i-frame (src)
Lets say we open site a.com with an URL
http://a.com/page-wher-frame-is-stored
Inside we open the i-frame with URL
http://f.com/start-page
Next the user navigates inside the i-frame and changes the URL inside the i-frame to
http://f.com/second-page
Now i want the URL of site a updating to something like:
http://a.com/page-wher-frame-is-stored?iframe-[frame-id]="http://f.com/second-page"
or (probably even worse ;) )
http://a.com/page-wher-frame-is-stored/[frame-id]/second-page
So that the relative URL inside the i-frame is known/stored in the URL of webpage hosting the i-frame.
Thanks for any help! Even a "This is not possible, or should not be done because ... would help a lot"

Ah sorry this was more or less already asked in #267. Simply overlooked it.

OK, no problem, would be great if you could add an example to either ticket.

Hello David, thank you for your answer.
I would love to add an example but i am afraid that i do not fully understand what kind of example you have in mind. If my Example above is sufficient regarding the wanted functionality it would be a pleasure to add it to the other issue also!
Would it be possible to pay you or any java script programmer you might now to implement this feature asap. We would need it to do something good for the world: We support non profit organizations to collect donations but are missing this one feature to go live. :(
I am an python programmer so for me it is pretty hard to figure this out. I guess that an experienced java programmer could do it in one day? But the best would for sure be that this is implemented in core directly and well done! - So who would be better for the job than the inventor of this great java script.
I am quite desperate so any help would be really appreciated!

Sorry been hyper busy and didn't noticed you'd add a comment to a closed post. Next time reopen it so it shows up in the open issues list.
Anyway interested to know if found a solution.

I'm also looking for such a feature, or a similar one.  I'm integrating Django with Trac where Trac is running in the iframe. The resizing works great but when a user clicks on a link within the iframe, I need the URL to show the full path and the parent page to reload and update that iframe.  Currently, it just changes the content in the iframe and the parent page and URL stay the same.  I'm also a Python guy with very little javascript experience so I'm a little lost.  Thank you for this contribution btw!  This is as close as I've been able to get to what I'm after.

I understand the requirement now. I think it could be done with something like this.
Add the following to each page you load into the iFrame.
<script>
	window.iFrameResizer = {
		readyCallback: function(){
			window.parentIFrame.sendMessage(location.href);
		}
	}
</script>

Then in the parent page messagecallback callback to receive the message and do what ever you want with it.

Thanks for the quick reply. This makes perfect sense. Sadly, my results
have been either nothing happening, or it goes into an infinite loop of
loading the page in the frame.
The alert(messageData.message); shows the correct url.
To messageCallback, I added: document.getElementById('iframe').src =
messageData.message;
That's when it goes into a loop.
On Fri, Nov 18, 2016 at 5:33 AM, David J. Bradshaw<EMAIL_ADDRESS>
wrote:

I understand the requirement now. I think it could be done with something
like this.
Add the following to each page you load into the iFrame.

Then in the parent page messagecallback
https://github.com/davidjbradshaw/iframe-resizer#messagecallback
callback to receive the message and do what ever you want with it.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/davidjbradshaw/iframe-resizer/issues/347#issuecomment-261511458,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AKsUYGrBVLmDL-LG6f4IJs0ukNIJvB9nks5q_Y0JgaJpZM4IOuI5
.

@speedpacer Not sure what you are trying to achieve. What you have done their is to tell the iFrame tag to load the current page every time it loads.

Sorry I didn't get back sooner, I'm still having trouble with this but I'm in the middle of the production migration right now so I've set this aside as a known issue but not a show stopper.
All I need to do is, when I click a link in the child page, I need the parent to navigate to that page so that the URL in the browser changes and can be bookmarked or copied and sent in an email, etc. What is currently happening is that I click on a link in the child page and only the content in the iframe changes but the URL in the browser stays the same.
I did as you suggested and added the messageCallback which sent the correct URL to the parent to navigate to, but if I tell the parent to navigate to that page, both the child and the parent try to navigate to it and it goes into the loop.  But if I cancel the navigation in the child, I never get the messageCallback.
I also tried setting the default target to parent in the child frame, but then it shows the entire child page in the browser without the parent.
I'm sure it's something I'm doing wrong, not real familiar with Javascript, but I've tried everything I could google for several days and nothing has worked. I could set up an example and give you access to it if it would help. I'd be willing to pay for your time if necessary.


showTimePicker inconsistent with showDatePicker

The header is not structured the same
It has an independent Theme structure rather than using standard theme elements
It doesn't expose the internal widget publically (e.g. CalendarDatePicker)
The widget library for date and time pickers doesn't even mention this

@codegrue
Can you provide example / use case of each point you listed to properly address this issue ? Also provide your flutter doctor -v.

Without additional information, we are unfortunately not sure how to resolve this issue.
We are therefore reluctantly going to close this bug for now.
Please don't hesitate to comment on the bug if you have any more information for us; we will reopen it right away!
Thanks for your contribution.
Could everyone who still has this problem please file a new issue with the exact description of what happens, logs, and the output of flutter doctor -v.
All system setups can be slightly different, so it's always better to open new issues and reference related issues.

I am going to post a separate issue for each item with screen shots.


Add activate deactivate metods to collapsible

Hi,
Can you add methods to activate and deactivate and "activated" and "deactivated" events to collapsible? It is useful to programmatically interact with collapsible.
Thanks

Need this feature, call by using link or another way.

+1

+1

+1

+1

+1

+1

Added open and close methods to collapsible in b6d3188


Pass in table name via context or environment variable

Migration of https://github.com/michaellavelle/spring-data-dynamodb/issues/65

Check out https://github.com/derjust/spring-data-dynamodb/wiki/Alter-table-name-during-runtime

This works great to alter table names during runtime. Is there a way to change the index names the same way?

Specifically global index names


Maybe use ready package for listing files to publish

https://github.com/timoxley/pkgfiles
https://github.com/thlorenz/irish-pub

Probalby not.


btce/liqui and bittrex fetchOrder, btce/liqui unified createOrder return

The third one is the charm, I hope 😂

Yay! ) I will merge it for now, though we might have to rethink the contents of the fetchOrder for consistency across all markets (the fieldset I mean). But, so far, so good, we will make several implementations, and then derive a common subset of fields from them.

Yeah, I only put in the minimum amount of fields I thought necessary, to minimize any possible inconsistencies between different exchanges.

I basically have no idea how to implement this for poloniex, though. We might need a workaround for that one.

Yeah, me too. For poloniex we might have to cache them locally, and use a mix of returnOpenOrders with the cache, as you said previously. Will think about it. Also, I'll contact their support to see if they have an undocumented method for that (this might also be the case, many exchanges actually have a more sophisticated API, but their docs are bad).
Btw, new version 1.3.24 is now available for downloading )

Thanks!


IONOS_CONTRACT_NUMBER as Terraform variable

Current Provider Version
newest provider
Use-cases
start api-driven terraform runs for different subcontracts
Problem is that at the moment we cannot start terraform api driven workspace runs with parameters for environment variable.
API-Driven Terraform runs are only possible with Terraform VARs.
Would be great if you could give us the already existing IONOS_CONTRACT_NUMBER Environment variable as a Terraform Variable.
Attempted Solutions
give us the possibility to set the contract id as a terraform variable instead of environment variable
Proposal
would be great if we can configure the contract number in the ionos provider block of terraform
provider "ionoscloud" {
username = "ionoscloud_username"
password = "ionoscloud_password"
endpoint = "ionoscloud_cloud_api_url"
IONOS_CONTRACT_NUMBER = "contractnumberABC"
}
References
https://developer.hashicorp.com/terraform/cloud-docs/api-docs/run

Should be fixed in https://github.com/ionos-cloud/terraform-provider-ionoscloud/releases/tag/v6.4.10


Added property renderedHtml to return gen func

This is to support React Router v4, which needs the result of calling
renderToString.

This change is

@robwise @alexfedoseev can I get a quick review on the JS parts?
@mapreal19 @samnang please take a quick peek at the Ruby code.

Coverage remained the same at 99.321% when pulling b719cb6894812531b010c011167a84cf216d7404 on justin800/allow-router-result-to-return-html-string into 53af84126bb1a7c10a89849625938e84775f344e on master.

Coverage remained the same at 99.321% when pulling b719cb6894812531b010c011167a84cf216d7404 on justin800/allow-router-result-to-return-html-string into 53af84126bb1a7c10a89849625938e84775f344e on master.

Coverage remained the same at 99.321% when pulling b719cb6894812531b010c011167a84cf216d7404 on justin800/allow-router-result-to-return-html-string into 53af84126bb1a7c10a89849625938e84775f344e on master.

Coverage increased (+0.008%) to 99.329% when pulling 0512a2bc9f3f83141307c9c6577acd033e2127e1 on justin800/allow-router-result-to-return-html-string into 53af84126bb1a7c10a89849625938e84775f344e on master.

Coverage increased (+0.008%) to 99.329% when pulling 0512a2bc9f3f83141307c9c6577acd033e2127e1 on justin800/allow-router-result-to-return-html-string into 53af84126bb1a7c10a89849625938e84775f344e on master.

Reviewed 6 of 19 files at r1.
Review status: 6 of 18 files reviewed at latest revision, 2 unresolved discussions.

Comments from Reviewable

Coverage remained the same at 99.329% when pulling 4cf969ae0f5b086a1f9f1b3f438d8501a495115a on justin800/allow-router-result-to-return-html-string into 4e567a364e57f1a320a4cf723e475666bc763b90 on master.

Coverage remained the same at 99.329% when pulling 4cf969ae0f5b086a1f9f1b3f438d8501a495115a on justin800/allow-router-result-to-return-html-string into 4e567a364e57f1a320a4cf723e475666bc763b90 on master.

@justin808 I tried only client part of react-router@4 yet. Looking at docs for server rendering, api seems kinda strange, I don't get why 404 case requires second render. But anyway, talking about integration w/ react_on_rails— it LGTM.


Ensure that the watcher returns a non-nil object before decoding

In some strange circumstances the watcher may return a nil object, as should here.
This PR fixes that by ensuring the watcher object is not nil before decoding.
/assign @irbekrm
/release-note-none
/kind bug

assuming the usual
/retest

/retest

/retest
Or maybe needs to be rebased off the PR that creates docker network

/retest

/lgtm

/lgtm


fix(repo): Typo in changeset:empty command

Type of change

[ ] 🐛 Bug fix
[ ] 🌟 New feature
[ ] 🔨 Breaking change
[X] 📖 Refactoring / dependency upgrade / documentation
[ ] other:

Packages affected

[ ] @clerk/clerk-js
[ ] @clerk/clerk-react
[ ] @clerk/nextjs
[ ] @clerk/remix
[ ] @clerk/types
[ ] @clerk/themes
[ ] @clerk/localizations
[ ] @clerk/clerk-expo
[ ] @clerk/backend
[ ] @clerk/clerk-sdk-node
[ ] @clerk/shared
[ ] @clerk/fastify
[ ] @clerk/chrome-extension
[ ] gatsby-plugin-clerk
[ ] build/tooling/chore

Description

[ ] npm test runs as expected.
[ ] npm run build runs as expected.

A small typo found in the docs for changeset:empty command.

This PR has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.


Document Unsupported Redis Read Replicas/Cluster (non-Sentinel)?

The Bitnami Redis chart's default architecture is replication (without Sentinel).  This chart, however, overrides that to set it to standalone.  This chart sets the Redis service name to the headless service, which can't differentiate between write and read replicas.  The result is that when not using Sentinel but still wanting to have read replicas, you will get the following error:
redis.exceptions.ResponseError: Error running script (call to f_f6b93ec749d56aefa37c49bbc5e7a6eedd0d4ec3): @user_script:15: @user_script: 15: -READONLY You can't write against a read only replica.

The fix is to use the *-redis-master for writes and the *-redis-replicas service for reads.  However, it seems that Nautobot doesn't currently support it due to an upstream issue.  For those who are possibly not familiar with the implementation details of Nautobot, but who are familiar with the Bitnami Redis chart (or Redis in general), it might be helpful to have a notice that clustering/read replicas aren't supported by Nautobot (and therefore the functionality available in the Redis chart is unsupported).

I agree, we should fix this, but I'm curious your use case for the read replicas?  Are you using a custom nautobot config to read from the *replicas?

@nniehoff re: use case: No, no custom config for dealing with read replicas (afaik not currently possible, ref: suor/django-cacheops!35).  While I'd like that to be a supported thing, I think that's far outside of the scope of this Helm chart.
My concern was more an edge case: if someone doesn't realize that read replicas weren't supported and was familiar with the Bitnami Redis chart and chose to configure it as architecture: replication, it would have failed before !126.


add ISC license metadata to gemspec

This pull request allows RubyGems.org and other tools (such as gem2rpm) to report a license for your gem.

hi @vmg , would you mind merging this gemspec metadata update for the ISC license?

@vmg - could you please merge this PR for adding the ISC license to the gem's metadata?

@vmg is this good to go too ?


ref/add_support_for_adaptive_banners

Add support for adaptive banners.  Issues #81 and #117.
adaptiveBannerWidth is added since MaxAdView does not support the users to specify the widget size, but we can enable that with the regular size properties of width and height.

First of all thanks for the effort @thomasmso @alhiwatan
Please update the doc for the widget method or other relevant info.
https://dash.applovin.com/documentation/mediation/flutter/ad-formats/banners#adaptive-banners


Classes to be compiled should only include classes with sources

It's possible that an annotation processor directly generates bytecode.
In this case, the generated classes shouldn't be part of the classes
to be recompiled even if they are annotated by an annotation recognized
by an annotation processor.
Fixes #13767

@bot-gradle test this

OK, I've already triggered ReadyForMerge build for you.

@bot-gradle test this

OK, I've already triggered ReadyForMerge build for you.

The only thing I'm a bit worried about is that I had to switch to a concrete type (ClassSymbol) to figure out if there's an associated source file. This doesn't seem to be a problem but it's kind of weak...

@melix I guess you could add a soft dependency on the JDK internal classes via reflection, although I'm not sure if that is better

Any other steps need to get this PR into ready to merge state?

I just took a look as there are tests failures related to the use of com.sun.tools.javac.util.Name in tests which does not seem available in Java 8.
I believe this will have to wait until we can figure out if the changes and the use of non public API is OK or not.
Note that this will be done before Gradle 6.7 goes out but not right now, summer time impacting availability.

@bot-gradle test this

Sorry some internal error occurs, please contact the administrator @blindpirate

@bot-gradle test this

Sorry some internal error occurs, please contact the administrator @blindpirate

@ljacomet PTAL

Btw how will this behave on JDKs that are not OpenJDK based?

I tested with IBM JDK 8 and it works.


Invalid properties passed to update_meadata break chart

🐛 Bug Report
Passing an invalid property to update_metadata is accepted and breaks the chart. Specifically, I passed
dw.update_metadata(dw_id, properties = {'annotate'  : 'SAMPLE ANNONATION'})
instead of:
dw.update_metadata(dw_id, properties = {'annotate' : {'notes' : 'SAMPLE ANNONATION'}})
The update was accepted and the corresponding property appeared in chart_properties.
As a result, the chart in the web UI became unusable. In addition, the "Refine" tab on the website vanished.
I suggest adding to the docs a list of valid properties to pass, and offering error messages when invalid ones are passed.
Environment

OS: Windows
Python version: 3.8.10
DW version: 0.4.6

thank you for this! and the suggestion!
Apologies for the delay but I'll be working on updating datawrapper in the following weeks! I'm hoping to address this.


Set up Kanban board

There are 4 people in the team:
@nottherealalanturing, @jahongiry, @myelin0, @Zelalem1222.
https://github.com/jahongiry/book-appointment_back-end/projects/1

Hi @jahongiry,
Wow, you did it 🎉

Your project is complete!  There is nothing else to say other than... it's time to merge it :shipit:
Congratulations! 🎉
To highlight

All cards have been assigned✔
All cards have points✔
Work distribution is fear✔

Optional suggestions
Every comment with the [OPTIONAL] prefix won't stop the approval of this PR. However, I strongly recommend you to take them into account as they can make your code better. Some of them were simply missed by the previous reviewer and addressing them will really improve your application.
Cheers and Happy coding!👏👏👏
Feel free to leave any questions or comments in the PR thread if something is not 100% clear.
Please, remember to tag me in your question so I can receive the notification.

As described in the Code reviews limits policy  you have a limited number of reviews per project (check the exact number in your Dashboard). If you think that the code review was not fair, you can request a second opinion using this form.


npm Cypress command arguments via -a results as baseUrl is null

I need to use -a option within the command line, as it will become an input parameter in my GitHub workflow. But when I pass -a option in the command line this results as baseUrl is null.
Is this an issue in the latest version or I'm doing something wrong?
"devDependencies": {
    "cypress": "^9.5.1",
    "cypress-multi-reporters": "^1.5.0",
    "cypress-parallel": "^0.9.0"
  }

"scripts": {
    "cy:run": "cypress run --browser chrome"
  },

Run command:
npx cypress-parallel -s cy:run -t 2 -d cypress/integration -a '\"--config baseUrl=https://example.cypress.io\"'

baseUrl is null

Works fine with regular Cypress run command
$ npx cypress open --config baseUrl=https://example.cypress.io

Also passing the option in script does work:
"scripts": {
    "cy:run": "cypress run --browser chrome --config baseUrl=https://example.cypress.io"
  },

$ npx cypress-parallel -s cy:run -t 2 -d cypress/integration

is this issue still open? I am using 0.9.1 and I am not able to pass arguments to the cypress script.

Просто удалите обратный слэш из агрументов:
npx cypress-parallel -s cy:run -t 2 -d cypress/integration -a '"--config baseUrl=https://example.cypress.io"'

Sorry, a bit too late on this: I confirm if you're using npx you don't need the backslash to escape double quotes.


Add NLOHMANN_DEFINE_DERIVED_TYPE_* macros

I created the new macros:

NLOHMANN_DEFINE_DERIVED_TYPE_INTRUSIVE
NLOHMANN_DEFINE_DERIVED_TYPE_INTRUSIVE_WITH_DEFAULT
NLOHMANN_DEFINE_DERIVED_TYPE_NON_INTRUSIVE
NLOHMANN_DEFINE_DERIVED_TYPE_NON_INTRUSIVE_WITH_DEFAULT

to recreate the proposed fix to #2199.
The macros accept as second parameter the base class.
Usage example:
class A {
  double Aa;
  double Ab;
  NLOHMANN_DEFINE_TYPE_INTRUSIVE(A, Aa, Ab)
};

class B : public A {
  int Ba;
  int Bb;
  NLOHMANN_DEFINE_DERIVED_TYPE_INTRUSIVE(B, A, Ba, Bb)
};

What they do is basically calling the to_json/from_json functions of the base class before serialising/deserialising the class members:
void to_json(nlohmann::json& j, const B& b) {
    nlohmann::to_json(j, static_cast<const A&>(b));
    // ...
}

void from_json(const nlohmann::json& j, B& b) {
    nlohmann::from_json(j, static_cast<A&>(b));
    // ...
}

Pull request checklist
Read the Contribution Guidelines for detailed information.

[x]  Changes are described in the pull request, or an existing issue is referenced.
[x]  The test suite compiles and runs without error.
[x]  Code coverage is 100%. Test cases can be added by editing the test suite.
[x]  The source code is amalgamated; that is, after making changes to the sources in the include/nlohmann directory, run make amalgamate to create the single-header files single_include/nlohmann/json.hpp and single_include/nlohmann/json_fwd.hpp. The whole process is described here.

Coverage: 100.0%. Remained the same when pulling 6a1b36fde940cfcd5edded55a116fd6e67bd7a88 on rotolof:derived_macros into 6af826d0bdb55e4b69e3ad817576745335f243ca on nlohmann:develop.

Any updates about this PR?

I just solved the conflict that had arisen in the meantime.

I am currently finishing #2998 to finally have a stable CI. Once this is merged, please update your branch.

(Also, please update from the develop branch and fix the conflicts.)

since this code now actually modifies the json object from base -  what do you guys think about using merge_patch instead of = for each member?
for example:
#define NLOHMANN_JSON_PAIR(member) {#member, nlohmann_json_t.member},

#define NLOHMANN_INIT_PAIRS(...)                                               \
  NLOHMANN_JSON_EXPAND(NLOHMANN_JSON_PASTE(NLOHMANN_JSON_PAIR, __VA_ARGS__))

#define NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE_INHERITANCE(derived, base, ...)     \
  void to_json(nlohmann::json &nlohmann_json_j,                                \
               derived const &nlohmann_json_t) {                               \
    to_json(nlohmann_json_j, static_cast<base const &>(nlohmann_json_t));      \
    nlohmann_json_j.merge_patch(nlohmann::json{                                \
        NLOHMANN_JSON_EXPAND(NLOHMANN_INIT_PAIRS(__VA_ARGS__))});              \
  }                                                                            \
  void from_json(nlohmann::json const &nlohmann_json_j,                        \
                 derived &nlohmann_json_t) {                                   \
    from_json(nlohmann_json_j, static_cast<base &>(nlohmann_json_t));          \
    NLOHMANN_JSON_EXPAND(NLOHMANN_JSON_PASTE(NLOHMANN_JSON_FROM, __VA_ARGS__)) \
  }

I updated to the latest develop and added documentation, let me know it is ok now

@rotolof Looks like you might be using a different version of astyle (perhaps even a newer one) which has different behavior than the current version being used.  https://github.com/nlohmann/json/pull/4180#issuecomment-1758627278

@gregmarr Thanks, I was using macOS brew's astyle that is 3.4.9. I tried with the suggested 3.1 but it does not support squeeze-lines, wtf?

Comment that line from the config and try again. Sorry for the inconvenience - I did not find the time to fix this yet.

Are there any chances to release that soon?

Are there any chances to release that soon? Seems like the most of work has been done and it just hanging almost a year now.

Sorry, I completely forgot about this until now! Let me check it again.

Is this change ok now? Can it possibly be integrated soon?

Is this change ok now? Can it possibly be integrated soon?

I think that everything is fine, I had updated with the latest develop and all checks had passed, is anything missing @nlohmann?

Would love to see this released too.

@nlohmann can you please relate to this changes? Can we release that? It's ready from half a year now...

Thanks!


handel model meta attribute

meta attribute is used for sails-postgresql adapter for setting table schemaName (like client.t_order. "client" is the schemaName and "t_order" is the table name).

Hi @medchkir, thanks for submitting this PR.
Where did you find this information documented?

Hi @medchkir, thanks for submitting this PR.
Where did you find this information documented?

hi, a find this solution in stackoverflow  and i made a lot of test. This code handel perfectly the select mode for the model, but not for the populate case.
So i moved forward to chande another module waterline-utils to handel the schema data in the join query.
I putted my changed in a fork git and i putted the link as "resolutions" in my package.json, like this :
"resolutions": {
    "waterline": "https://gitlab.com/mch-service/waterline",
    "waterline-utils": "https://gitlab.com/mch-service/waterline-utils"
  }

I hope you can merge this changes in the original modules for all the sails community.
thank you


Integration with laravel

Hi,
I've a clean install of a laravel 5.1 app with a clean prestashop <IP_ADDRESS> (id_shop=1) installed into laravel public dir. Everything is running in an homestead box. I wrote a controller as following:
<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\Http\Requests;
use App\Http\Controllers\Controller;

use Hpar\PrestashopBridge\PrestashopBridge;
use Auth;

class PrestashopController extends Controller
{

    public function loginAction()
    {
        if (Auth::guest())
        {
            return "Access Denied";
        }

        $prestaBridge = new PrestashopBridge('/home/vagrant/test/public/prestashop', 1);

        $user = \Auth::user(); //get connected user
        //if user exist in prestahop database
        if (!$prestaBridge->userExist($user->email))
            $prestaBridge->createUser(
                $user->email,
                $user->lastname,
                $user->firstname
            );

        $prestaBridge->login($user->email);

        return $this->redirect('http://test.dev/prestashop/');
    }
}

Then I put a sample route in routes.php:
Route:get("gopresta", 'PrestashopController@loginAction');

If I login in my laravel app and then point to gopresta route I receive this error:
ErrorException in Repository.php line 364: call_user_func_array() expects parameter 1 to be a valid callback, class 'Illuminate\Cache\FileStore' does not have a method 'isStored'

Here the call stack:
in Repository.php line 364
at HandleExceptions->handleError('2', 'call_user_func_array() expects parameter 1 to be a valid callback, class 'Illuminate\Cache\FileStore' does not have a method 'isStored'', '/home/vagrant/test/vendor/laravel/framework/src/Illuminate/Cache/Repository.php', '364', array('method' => 'isStored', 'parameters' => array('objectmodel_def_Shop')))
at call_user_func_array(array(object(FileStore), 'isStored'), array('objectmodel_def_Shop')) in Repository.php line 364
at Repository->__call('isStored', array('objectmodel_def_Shop'))
at Repository->isStored('objectmodel_def_Shop')
at call_user_func_array(array(object(Repository), 'isStored'), array('objectmodel_def_Shop')) in CacheManager.php line 310
at CacheManager->__call('isStored', array('objectmodel_def_Shop')) in /home/vagrant/test/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php line 210
at CacheManager->isStored('objectmodel_def_Shop') in /home/vagrant/test/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php line 210
at Facade::__callStatic('isStored', array('objectmodel_def_Shop')) in /home/vagrant/test/public/prestashop/classes/ObjectModel.php line 1748
at Cache::isStored('objectmodel_def_Shop') in ObjectModel.php line 1748
at ObjectModelCore::getDefinition('Shop') in ObjectModel.php line 206
at ObjectModelCore->__construct('1', null, null) in Shop.php line 131
at ShopCore->__construct('1') in Shop.php line 393
at ShopCore::initialize() in config.inc.php line 105
at include('/home/vagrant/test/public/prestashop/config/config.inc.php') in PrestashopBridge.php line 42
at PrestashopBridge->loadPrestaKernel() in PrestashopBridge.php line 21
at PrestashopBridge->__construct('/home/vagrant/test/public/prestashop', '1') in PrestashopController.php line 25
at PrestashopController->loginAction()

Any advice on the cause of this error?
Thank you in advance.

I saw that the problem is in my installation laravel has yet a class named Cache that is called in place of the one present in prestashop. So I have to find a way to use the proper prestashop Cache class.

I found this solution. With the installation described above I renamed the façades 'Cache' and 'Cookie' in laravel config/app.php to 'ACache' and 'ACookie'. Thus prestashop calls its classes.


Grouping separator is not taken from regional settings

I have set in system settings (Windows/Regional settings) space as thousands grouping separator, so expecting numbers to be formatted like that: 123 456.78
But this settings is not taken when presenting data in result set
Also I tried to change data format/  locale  - but whatever I change here (any language / country) same grouping and decimal symbol is presented (comma -> grouping, dot -> decimal place)

Please try to enable setting Use native numeric format.

Please try to enable setting Use native numeric format.

I did try - but then it stops grouping at all

Thank you for the bug report.

@maciey Please check connection settings (they can overwrite global data formatting settings).
You can see them on connection settings dialog or by clicking on cog icon in the bottom toolbar.

@maciey Please check connection settings (they can overwrite global data formatting settings).
You can see them on connection settings dialog or by clicking on cog icon in the bottom toolbar.

@serge-rider
I cant see there any locale info / grouping setting - what option I should check ?
Below is what I see

The data format can be set for whole DBeaver or for one database only.
Steps:

Select Edit connection in context menu in DB Navigator for your database
Go to Data viewer> Data formatting
Check whether Datasource settings enabled (they can overwrite global data formatting settings).

I was able finally to set what I needed (space as grouping separator) - but I had to user FR region.
There is no option to select PL (Poland), no option to set own separator character (most welcome option), system regional settings are not honored (I have spaces as separator in all Windows apps)
So as long as I know workaround I can consider this as resolved. But from app perspective this is not most elegant way ... :)


Add jit mode to tailwind

it will be a very good improvement if you added tailwind jit mode
docs link => https://tailwindcss.com/docs/just-in-time-mode
it will save some space and the ui will be faster and smaller

Yeah, I would like to change to jit in the near future. Thanks for the suggestion!

The near future is here after I merge #44.

I've merged it, so it's based on Tailwind JIT! 👍🏻  Thanks for the suggestion!


add script to generate PCs and GRM

I believe this is working on the Caribbean Hispanics dataset (see my analysis repo for an example calling this script).
@smgogarten Do the argument names all look alright? It would be nice to get that right the first time since it can be a pain to change after people start getting used to it. Is there anything hard-coded in that should be a command line arg?
Lastly, I'd appreciate if someone could go through and make sure this is all in the correct order (KING > PC-AIR > PC relate > PC-AIR > PC relate) and filters/iterators are being reset appropriately

I tested it and it is running as of the latest commit (603520d)


zsh completion doesn't work

Thanks for your work on totp-cli, very much appreciated!
I noticed that the zsh completion doesn't work. It seems it's trying to evaluate the cli options by calling --generate-shell-completion, however this command doesn't exist. Is there an updated version, or another way to generate the completion file?
File taken from:

https://github.com/yitsushi/totp-cli/blob/v1.8.7/autocomplete/zsh_autocomplete

~# totp-cli <TAB><TAB>
GLOBAL OPTIONS   COMMANDS  VERSION  AUTHOR  USAGE  NAME  --
Incorrect Usage               --  flag provided but not defined: -generate-shell-completion

version:
~# totp-cli --version
totp-cli version 1.8.7

Weird. This should enable the competition part based on the official urfave/cli docs.
It has zsh support and I comp file is coming from there repo. I just replaced the $PROG variable with a static value so we don't have to define PROG beforehand (which would be a pain and pretty ugly).

I checked if we are using the latest version of now and maybe it was fixed in the library, but we have the latest v2.27.1 version in the go.mod file. Only one release is newer than v2.27.1 and that's the v3.0.0-alpha9, so that's not a way ahead yet.
I don't think I can do more than that sadly.

Hello @yitsushi ,
thanks for looking into this. I tried to meddle around with this some more, and also tried the bash completion instead of zsh , but somethings seems to be off in general.
E.g. if you try the bash completion, this happens:
~#  totp-cli <TAB><TAB>
Display all 104 possibilities? (y or n)
-                           CLI                         generate,                   like                        prefix                      totp-cli
1.8.7                       [command                    Generate                    list                        print                       TOTP_TOKEN
a                           command                     -generate-shell-completion  List                        provided                    under
account                     commands                    [global                     mean                        rename                      Usage:
accounts                    COMMANDS:                   GLOBAL                      NAME:                       Rename                      USAGE:
add                         defined:                    Go.                         namespace                   Set                         -v
Add                         delete                      -h                          namespace.                  set-length                  --version,
add-token,                  Delete                      -h?                         namespaces                  set-prefix                  version
all                         Did                         h                           namespaces.                 show                        VERSION:
an                          dump                        --help,                     new                         Shows                       whole
Authenticator               Dump                        help                        not                         specific                    without
AUTHOR:                     Efertone                    help,                       of                          stdin                       written
Authy/Google<EMAIL_ADDRESS>          import                      one                         Storage                     yaml
available                   file.                       Import                      options]                    the                         you
backend.                    flag                        in                          OPTIONS:                    token.
but                         for                         Incorrect                   or                          tokens
Change                      from                        instant                     OTP                         tool
change-password             g                           length                      password.                   TOTP

It basically brings up the help/error message and tries to parse the help text in completable commands, which obviously doesn't work.
Are you sure your implementation is complete? Taking a look at https://github.com/yitsushi/totp-cli/blob/main/app.go, it seems that  you're missing blocks like these (as described in https://cli.urfave.org/v2/examples/bash-completions/)
            {
                Name:    "add-token",
                Aliases: []string{"add"},
                Usage:   "Add new token.",
                ...,
           },

Also the parameter --generate-shell-completion should be exposed by your application it seems, which currently doesn't work. Maybe this is the main culprit here?
At least it's mentioned in:
https://github.com/urfave/cli/blob/065ea5c05afc1789703bda08dcd045b5c2ce496f/godoc-current.txt#L617

No they are there but behind the functions
Commands: []*cli.Command{
  cmd.AddTokenCommand(),
  // ...
}

and AddTokenCommand() returns with a *cli.Command
That's the same as having it inline. I have all the fields on it: https://github.com/yitsushi/totp-cli/blob/main/internal/cmd/add_token.go#L14
I just didn't create one big array, I build it up from chunks, but the end result is the same, this gets into the Commands list, otherwise the command wouldn't even work.
&cli.Command{
  Name:      "add-token",
  Aliases:   []string{"add"},
  Usage:     "Add new token.",
  ...

As the documentation says, enabling that flag should add --generate-shell-completion automatically, and for a while it added it.

I have a feeling when a refactor happened there, they removed the part that adds the flag to the command. Based on this search: https://github.com/search?q=repo%3Aurfave%2Fcli GenerateShellCompletionFlag&type=code

GenerateShellCompletionFlag is defined as a flag.
GenerateShellCompletionFlag is never used again.

Ok sorry, I didn't want to confuse you, my programming skills are rather barebones and I didn't notice the include.
But it would definitely be nice to have it working again, if a recent dependency update broke it maybe an earlier version of urfave/cli still works, until upstream fixes it?

I'll try to add the flag manually, I think the flag handling is still there, but the flag set is missing. I think if I add the flag on my side, the core will handle it.
If not, I'll try to check when it was removed and either open a PR there to add it back or just revert to older version of urfave/cli.
Looking at the work done there in the last 6-8 months, it seems v2 reached the end and they are more on the v3 path, so I don't expect much work on it.

and just to be fair, I never used autocomplete so I just hoped it's working, others fixed it, added extras with PRs, but as by scope it can only autocomplete commands and flags, and it can't autocomplete namespaces and token names because that's encrypted and only decrypted when a specific command was issued.

It seems it's not even my side. I created a new app in an empty directory, copy paste the first example from https://cli.urfave.org/v2/examples/flags/.
It's funny it recognises the flag --lang as -lang and proceed with that, sadly the shell gen is handler weirdly and it literally checks if the flag is "--generate-bash-completion".

As a quick research, I don't know how to fix it now.
I checked what version I used when I moved away from my own old cli lib: v2.25.7
Created a demo app:
module asd

go 1.22.2

require github.com/urfave/cli/v2 v2.25.7

require (
        github.com/cpuguy83/go-md2man/v2 v2.0.2 // indirect
        github.com/russross/blackfriday/v2 v2.1.0 // indirect
        github.com/xrash/smetrics v0.0.0-20201216005158-039620a65673 // indirect
)

and the go file:
package main

import (
        "fmt"
        "log"
        "os"

        "github.com/urfave/cli/v2"
)

func main() {
        app := &cli.App{
                EnableBashCompletion: true,
                Commands: []*cli.Command{
                        {
                                Name:    "add",
                                Aliases: []string{"a"},
                                Usage:   "add a task to the list",
                                Action: func(cCtx *cli.Context) error {
                                        fmt.Println("added task: ", cCtx.Args().First())
                                        return nil
                                },
                        },
                },
        }

        if err := app.Run(os.Args); err != nil {
                log.Fatal(err)
        }
}

as a result:
❯ go run . --generate-shell-completion
Incorrect Usage: flag provided but not defined: -generate-shell-completion
...

I don't know if it every worked or not at this point.


Remove references to V2 and make everything standard.

Coverage decreased (-0.001%) to 99.795% when pulling ca5d15a014a8e4c2bf99c0a1713c8d18cee28924 on mng/cleanup-v2-referenes into 3620e5cb0b84629619e032d695ff35c45eeb4d5c on master.


Profile creation and use via API

Directly creating spatial and transient profiles from python and numpy arrays. Use via API to set up boundary conditions

TODO : request a settings API extension for this


[stable/gitlab-ce] gitlab-ce pod FailedScheduling due to NoVolumeZoneConflict

Bottomline: PVCs for gitlab-ce pod (gitlab-ce-data & gitlab-ce-etc) are not guarenteed to launch in same availability zone in a multi-zone k8s node topology. This prevents the  gitlab-ce pod from being scheduled since it can not mount the volumes.
Maybe there is a way to link or bundle the the two PVCs or force them into a specific zone?

I encountered a similar issue with a different gitlab chart, and I combined the etcd and data volumes to work around this.

you can create a separate storage class that is only available in one AZ, thats how I got around it.

Thanks @justinsb. I ditched the etcd volume and used subpaths in the deployment.yaml to split up the gitlab-data volume.
 volumeMounts:
 - name: gitlab-data
   mountPath: /etc/gitlab
   subPath: gitlab
 - name: gitlab-data
   mountPath: /gitlab-data
   subPath: gitlab-data

Works and I'll monitor the gitlab-data volume for space issues.

closing this issue. Reopen if more needs to be discussed.


Fixed coerce type to not convert literal string values to floats

Coverage remained the same at 90.785% when pulling bb89d8616b5b1bd33d5c1da7f5f4686566f895b0 on fix_issue_coerce_type_literal_nan into 9cdecd80414fb92266b827cd01a209a4b1484ff0 on master.


Batch mode

Can you add a non interactive mode? E.g --resizefs ?

+1

Doesn't it support it already?

A very limited set of instructions can be done at the CLI
Philip McGaw
www.philipmcgaw.com
07969502077
@Philip_McGaw

On 21 Jun 2015, at 15:49, Bjarke Walling<EMAIL_ADDRESS>wrote:
Doesn't it support it already?
—
Reply to this email directly or view it on GitHub.

resizefs is already supported, but see pull request #23.

https://github.com/asb/raspi-config/pull/23#issuecomment-204784211


cgnutools: 5-GCC-final broken libstdc++.so

Hi, nice repository. I'm not sure what the problem is (the title). However, libstdc++ becomes like this:
$ ldd /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so

	ldd (0x7f16150ee000)
	libc.so => ldd (0x7f16150ee000)
Error loading shared library libgcc_s.so.1: No such file or directory (needed by /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so)
Error relocating /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so: _Unwind_GetRegionStart: symbol not found
Error relocating /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so: _Unwind_GetTextRelBase: symbol not found
Error relocating /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so: _Unwind_RaiseException: symbol not found
Error relocating /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so: _Unwind_Resume_or_Rethrow: symbol not found
Error relocating /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so: _Unwind_GetIPInfo: symbol not found
Error relocating /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so: _Unwind_GetLanguageSpecificData: symbol not found
Error relocating /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so: _Unwind_GetDataRelBase: symbol not found
Error relocating /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so: _Unwind_SetGR: symbol not found
Error relocating /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so: _Unwind_DeleteException: symbol not found
Error relocating /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so: __popcountdi2: symbol not found
Error relocating /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so: _Unwind_Resume: symbol not found
Error relocating /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so: _Unwind_SetIP: symbol not found

So it can't build on step 8-clang
$ LD_LIBRARY_PATH=/cgnutools/lib:/cgnutools/${CMLFS_TARGET}/lib:/usr/lib:/lib ninja -C build

ninja: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by ninja)
ninja: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by ninja)
ninja: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by ninja)
ninja: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by ninja)
ninja: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by ninja)
ninja: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by ninja)
ninja: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by ninja)
ninja: Relink `/cgnutools/x86_64-cmlfs-linux-musl/lib/libgcc_s.so.1' with `/lib64/libc.so.6' for IFUNC symbol `memset'
Segmentation fault

Though, libgcc_s.so.1 is fine.
$ ldd /cgnutools/x86_64-cmlfs-linux-musl/lib/libgcc_s.so.1

	ldd (0x7f04a7038000)
	libc.so => ldd (0x7f04a7038000)

When I use LD_PRELOAD:
$ LD_PRELOAD=/cgnutools/x86_64-cmlfs-linux-musl/lib/libgcc_s.so.1 LD_LIBRARY_PATH=/cgnutools/lib:/cgnutools/${CMLFS_TARGET}/lib:/usr/lib:/lib ninja -C build

ninja: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by ninja)
ninja: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by ninja)
ninja: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by ninja)
ninja: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by ninja)
ninja: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by ninja)
ninja: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by ninja)
ninja: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by ninja)
ninja: Entering directory `build'
[11/3759] Linking CXX static library lib/libLLVMDemangle.a
FAILED: lib/libLLVMDemangle.a
: && /usr/bin/cmake -E rm -f lib/libLLVMDemangle.a && /cgnutools/bin/x86_64-cmlfs-linux-musl-ar Dqc lib/libLLVMDemangle.a  lib/Demangle/CMakeFiles/LLVMDemangle.dir/Demangle.cpp.o lib/Demangle/CMakeFiles/LLVMDemangle.dir/ItaniumDemangle.cpp.o lib/Demangle/CMakeFiles/LLVMDemangle.dir/MicrosoftDemangle.cpp.o lib/Demangle/CMakeFiles/LLVMDemangle.dir/MicrosoftDemangleNodes.cpp.o && /cgnutools/bin/x86_64-cmlfs-linux-musl-ranlib -D lib/libLLVMDemangle.a && :
/usr/bin/cmake: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by /usr/bin/cmake)
/usr/bin/cmake: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by /usr/bin/cmake)
/usr/bin/cmake: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by /usr/bin/cmake)
/usr/bin/cmake: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by /usr/bin/cmake)
/usr/bin/cmake: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by /usr/bin/cmake)
/usr/bin/cmake: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by /usr/bin/cmake)
/usr/bin/cmake: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by /usr/bin/cmake)
/usr/bin/cmake: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by /usr/bin/cmake)
/usr/bin/cmake: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by /usr/bin/cmake)
/usr/bin/cmake: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by /usr/bin/cmake)
/usr/bin/cmake: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by /usr/bin/cmake)
/usr/bin/cmake: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by /usr/bin/cmake)
/usr/bin/cmake: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by /usr/bin/cmake)
/usr/bin/cmake: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by /usr/bin/cmake)
/usr/bin/cmake: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by /usr/bin/cmake)
/usr/bin/cmake: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by /usr/lib64/libjsoncpp.so.24)
/usr/bin/cmake: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by /usr/lib64/libjsoncpp.so.24)
/usr/bin/cmake: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by /usr/lib64/libjsoncpp.so.24)
/usr/bin/cmake: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by /usr/lib64/libjsoncpp.so.24)
/usr/bin/cmake: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by /usr/lib64/libjsoncpp.so.24)
/usr/bin/cmake: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by /usr/lib64/libjsoncpp.so.24)
/usr/bin/cmake: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by /usr/lib64/libicuuc.so.69)
/usr/bin/cmake: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by /usr/lib64/libicuuc.so.69)
/usr/bin/cmake: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by /usr/lib64/libicuuc.so.69)
/usr/bin/cmake: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by /usr/lib64/libicuuc.so.69)
/usr/bin/cmake: Relink `/cgnutools/x86_64-cmlfs-linux-musl/lib/libgcc_s.so.1' with `/lib64/libc.so.6' for IFUNC symbol `memset'
[16/3759] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/APFloat.cpp.o
ninja: build stopped: subcommand failed

Now libstdc++ solved by using patchelf.
$ patchelf --replace-needed libgcc_s.so.1 /cgnutools/x86_64-cmlfs-linux-musl/lib/libgcc_s.so.1 libstdc++.so.6.0.28

However, ninja still expect Host's libc (glibc)
ninja: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by ninja)
ninja: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by ninja)
ninja: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by ninja)
ninja: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by ninja)
ninja: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by ninja)
ninja: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by ninja)
ninja: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by ninja)
ninja: Relink `/cgnutools/x86_64-cmlfs-linux-musl/lib/libgcc_s.so.1' with `/lib64/libc.so.6' for IFUNC symbol `memset'
Segmentation fault

if your host is musl-based, check /etc/ld-musl-x86_64.path and make sure GCC libraries are listed. If going host, check /etc/ld.so.conf.
That issue of ninja looking for GCC libraries looks familiar. Hopefully I remembered correctly.

If you just patched with patchelf you must restart your build... Either ninja clean or if building in a separate build directory, empty it. Then re-run the cmake command then run ninja once more

If you just patched with patchelf you must restart your build... Either ninja clean or if building in a separate build directory, empty it. Then re-run the cmake command then run ninja once more

Its already clean

To be honest, I've been using a musl-libc system for 4 years... I haven't tested this repo on a Glibc system.

Seems like, I must bootstrap ninja or samurai with musl libc firstly.

Btw, when building stage0 clang .. do you forget to export current cross-toolchain for example ${CMLFS_TARGET}-gcc?

Nah, finally I got this. Did you know how to solve?

Yes, i think i had a similar issue in getting vim to compile for the tool chain. Set these flags:
export LDFLAGS="-L/cgnutools/lib"
export CPPFLAGS="-I/cgnutools/include"

Yes, i think i had a similar issue in getting vim to compile for the tool chain. Set these flags:
export LDFLAGS="-L/cgnutools/lib"
export CPPFLAGS="-I/cgnutools/include"

still
collect2: error: ld returned 1 exit status
ninja: subcommands failed

Lol, as you said. Seems like gcc final still expect glibc.

To be honest, I've been using a musl-libc system for 4 years... I haven't tested this repo on a Glibc system.
I don't have any glibc systems running :P

On Glibc system you have to build mlfs, then in mlfs chroot build and install libuv and cmake, then build entire cmlfs system. It is needed because cmake links objects with that libc, against which it has been build. When I tried to build CMLFS cgnutools on Ubuntu 21.04, I have got a lot of stuff that cmake can't find libstdc++. Previously I have built mlfs platform on my usb stick, so I needed to add libuv and cmake. And then everything moves like a planned.

To be honest, I've been using a musl-libc system for 4 years... I haven't tested this repo on a Glibc system.
I don't have any glibc systems running :P

On Glibc system you have to build mlfs, then in mlfs chroot build and install libuv and cmake, then build entire cmlfs system. It is needed because cmake links objects with that libc, against which it has been build. When I tried to build CMLFS cgnutools on Ubuntu 21.04, I have got a lot of stuff that cmake can't find libstdc++. Previously I have built mlfs platform on my usb stick, so I needed to add libuv and cmake. And then everything moves like a planned.

If this issue occurs, try to change build system from Ninja to Unix Makefiles. Then it should fork, if it fails with ninja.

Hi, nice repository. I'm not sure what the problem is (the title). However, libstdc++ becomes like this:
$ ldd /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so

	ldd (0x7f16150ee000)
	libc.so => ldd (0x7f16150ee000)
Error loading shared library libgcc_s.so.1: No such file or directory (needed by /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so)
Error relocating /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so: _Unwind_GetRegionStart: symbol not found
Error relocating /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so: _Unwind_GetTextRelBase: symbol not found
Error relocating /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so: _Unwind_RaiseException: symbol not found
Error relocating /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so: _Unwind_Resume_or_Rethrow: symbol not found
Error relocating /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so: _Unwind_GetIPInfo: symbol not found
Error relocating /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so: _Unwind_GetLanguageSpecificData: symbol not found
Error relocating /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so: _Unwind_GetDataRelBase: symbol not found
Error relocating /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so: _Unwind_SetGR: symbol not found
Error relocating /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so: _Unwind_DeleteException: symbol not found
Error relocating /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so: __popcountdi2: symbol not found
Error relocating /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so: _Unwind_Resume: symbol not found
Error relocating /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so: _Unwind_SetIP: symbol not found

So it can't build on step 8-clang
$ LD_LIBRARY_PATH=/cgnutools/lib:/cgnutools/${CMLFS_TARGET}/lib:/usr/lib:/lib ninja -C build

ninja: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by ninja)
ninja: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by ninja)
ninja: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by ninja)
ninja: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by ninja)
ninja: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by ninja)
ninja: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by ninja)
ninja: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by ninja)
ninja: Relink `/cgnutools/x86_64-cmlfs-linux-musl/lib/libgcc_s.so.1' with `/lib64/libc.so.6' for IFUNC symbol `memset'
Segmentation fault

Though, libgcc_s.so.1 is fine.
$ ldd /cgnutools/x86_64-cmlfs-linux-musl/lib/libgcc_s.so.1

	ldd (0x7f04a7038000)
	libc.so => ldd (0x7f04a7038000)

Try to build MLFS environment, then in it begin to build CMLFS. And change Ninja to Unix Makefiles for some reason.

Hi, nice repository. I'm not sure what the problem is (the title). However, libstdc++ becomes like this:
$ ldd /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so

	ldd (0x7f16150ee000)
	libc.so => ldd (0x7f16150ee000)
Error loading shared library libgcc_s.so.1: No such file or directory (needed by /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so)
Error relocating /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so: _Unwind_GetRegionStart: symbol not found
Error relocating /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so: _Unwind_GetTextRelBase: symbol not found
Error relocating /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so: _Unwind_RaiseException: symbol not found
Error relocating /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so: _Unwind_Resume_or_Rethrow: symbol not found
Error relocating /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so: _Unwind_GetIPInfo: symbol not found
Error relocating /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so: _Unwind_GetLanguageSpecificData: symbol not found
Error relocating /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so: _Unwind_GetDataRelBase: symbol not found
Error relocating /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so: _Unwind_SetGR: symbol not found
Error relocating /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so: _Unwind_DeleteException: symbol not found
Error relocating /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so: __popcountdi2: symbol not found
Error relocating /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so: _Unwind_Resume: symbol not found
Error relocating /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so: _Unwind_SetIP: symbol not found

So it can't build on step 8-clang
$ LD_LIBRARY_PATH=/cgnutools/lib:/cgnutools/${CMLFS_TARGET}/lib:/usr/lib:/lib ninja -C build

ninja: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by ninja)
ninja: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by ninja)
ninja: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by ninja)
ninja: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by ninja)
ninja: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by ninja)
ninja: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by ninja)
ninja: /cgnutools/x86_64-cmlfs-linux-musl/lib/libstdc++.so.6: no version information available (required by ninja)
ninja: Relink `/cgnutools/x86_64-cmlfs-linux-musl/lib/libgcc_s.so.1' with `/lib64/libc.so.6' for IFUNC symbol `memset'
Segmentation fault

Though, libgcc_s.so.1 is fine.
$ ldd /cgnutools/x86_64-cmlfs-linux-musl/lib/libgcc_s.so.1

	ldd (0x7f04a7038000)
	libc.so => ldd (0x7f04a7038000)

Try to build MLFS environment, then in it begin to build CMLFS. And change Ninja to Unix Makefiles for some reason.

My issue yesterday is in cross ld still expect host's ncurses libraries.

I'll setup a host machine with a basic Ubuntu install and attempt a build.
I had a similar issue with an early build of Musl-LFS

Try also remove git in the first host system and/or in the first chroot mlfs system due to the fact of using git for versioning, may be build of temporary mlfs environtment will not be needed or will be easier. And this "output" with libstdc++ will not appear.

Got my Ubuntu 20.04 system up and running. To make sure host has a toolchain:
sudo apt install build-essentials flex bison

I was able to build up to clang (8-clang) of cgnutools. Current error:
[ 24%] Building arm_neon.h...
Error loading shared library libstdc++.so.6: No such file or directory (needed by ../../../../bin/clang-tblgen)                                 Error loading shared library libgcc_s.so.1: No such file or directory (needed by ../../../../bin/clang-tblgen)

I did run the cmake command to generate Makefiles instead of ninja files.
So looks like clang-tblgen was built with dependencies in $LLVMSRC/build/lib :
cmlfs@amd64550:/mnt/cmlfs/sources/llvm$ readelf -d  build/bin/clang-tblgen

Dynamic section at offset 0xce8f0 contains 28 entries:
  Tag        Type                         Name/Value
 0x0000000000000001 (NEEDED)             Shared library: [libstdc++.so.6]
 0x0000000000000001 (NEEDED)             Shared library: [libgcc_s.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libc.so]
 0x000000000000000f (RPATH)              Library rpath: [$ORIGIN/../lib]

Fixed my issue for clang-tblgen with commit ce9c56f
So far building past 35% of clang ( 1-cgnutools/8-clang )

Try also remove git in the first host system and/or in the first chroot mlfs system due to the fact of using git for versioning, may be build of temporary mlfs environtment will not be needed or will be easier. And this "output" with libstdc++ will not appear.

Yes, I was able to build cgnutools under Ubuntu without git installed. No mlfs chroot/toolchain required.
Following commits make cgnutools build successfully on a glibc host:

a86573ca575133bc66f0dcd5bfe330aa62b7106a
ce9c56fd48351e854a2aa2c22d6140752da1109d
1d294be301a691bdfefe5d00fdf311ba0cb8be57

ltinfo

I got same problem with this

Check /cgnutools/etc/ld-musl-x86_64.path
# Configure the dynamic linker
cat > /cgnutools/etc/ld-musl-x86_64.path << "EOF"
/cgnutools/lib
/cgnutools/x86_64-cmlfs-linux-musl/lib
/usr/lib
/lib
EOF

Check /cgnutools/etc/ld-musl-x86_64.path
# Configure the dynamic linker
cat > /cgnutools/etc/ld-musl-x86_64.path << "EOF"
/cgnutools/lib
/cgnutools/x86_64-cmlfs-linux-musl/lib
/usr/lib
/lib
EOF

Yeah, its same

If i understand correctly, you are stuck at 5-GCC-final of 1-cgnutools with GCC failing to build due to cannot find -ltinfo by ld (GCC) ?

If i understand correctly, you are stuck at 5-GCC-final of 1-cgnutools with GCC failing to build due to cannot find -ltinfo by ld (GCC) ?

No, I stuck at 8-clang at [ 21%] Linking CXX executable ../../bin/llvm-config, caused by cannot find -ltinfo.
/cgnutools/x86_64-cmlfs-linux-musl/bin/ld is from binutils, and binutils still linked with host's libc (in this case, i use glibc).

I think to recompile binutils after install 5-GCC-final from 1-cgnutools ?

I think to recompile binutils with current final GCC after install 5-GCC-final from 1-cgnutools ?

oh maybe not, i'm confused. gcc final also still expect host's glibc

I wonder how cross-binutils and host's binutils are differents, host's ld can find -ltinfo and cross-binutils not

With my first successful build, i did use cross-tools from MLFS to build cgnutools then used cgnutools to build llvmtools. I figured to combine cross-tools and cgnutools to avoid having 3 different tool chains

With my first successful build, i did use cross-tools from MLFS to build cgnutools then used cgnutools to build llvmtools. I figured to combine cross-tools and cgnutools to avoid having 3 different tool chains

Yeah, this current method in CMLFS is good idea but i have that problems. I have not intended to re-start the cross-tools from MLFS.

I'm currently stuck at 04-libcxx of 2-llvmtools, using LLV12 source (LLVM12 branch)... seems like header conflict.
I believe i used the same build instructions from master (LLVM11.0.0) for the LLVM12 branch.
I might scratch that LLVM12 build and retry LLVM11 (master)

I see, I need install ncurses to get libtinfo.so in 1-cgnutools

For the host or to add to cgnutools?

I see, I need install ncurses to get libtinfo.so in 1-cgnutools

For the host or to add to cgnutools?

add to cgnutools

Yeah, worked now

Yeah, worked now

In that case, sounds like your host does not have the ncurses development libraries installed. So you can either install it for your host OR build it and install it to cgnutools.

Yeah, worked now

In that case, sounds like your host does not have the ncurses development libraries installed. So you can either install it for your host OR build it and install it to cgnutools.

My host have it, I use gentoo. As metioned in https://github.com/dslm4515/CMLFS/issues/8#issuecomment-868847604

Try to use https://github.com/sabotage-linux/netbsd-curses 🤣

Lol, I need to install curses library too in llvmtools

I might consider netbsd-curses... just like how I use gettext-tiny instead of GNU's gettext.

and may be OpenBSD's m4