Meteor Community Packages listing for Hacktoberfest 2023

Thank you Jan, really useful to get updated on the challenges on community packages.

meteor-mocha & meteor-mocha-core
The Mocha packages are part of Meteor Testing. Both packages will get releases during Hacktoberfest in preparation for Meteor 3.0 release. In the meantime you can help with fixing bugs and for example working on better integration with VS Code.

As mentioned here, I already expeirmented with test packages for Meteor 3.0 by removing the fibers. I am not sure if I should proceed there with a PR since I don’t know if those changes are already covered or assigned. The post you wrote reflect that it will get releases and I assume someone is in charge since you ask help for other issues.
My change is a minor change to remove a single point using fibers and have compatibility with latest Meteor versions.

Regarding meteor-browser-tests, I use it on my projects but I had to adapt a bit the driver I use “puppeteer”. However, I saw the issue you mentioned and found the github issue of having problems with chromedriver too and surely it happens through all drivers since newer selenium 4,x changed the API and produces breaking changes. I will be reviewing them as I have time to dedicate to OS,

The initial PR for this:

1 Like

I‘d really like to see GitHub - meteorrn/meteor-react-native: Meteor client for React Native matching Meteor Spec listed here. Got some nice offline first ideas for the tracker and me and @jkuester want to get this meteor 3 ready aswell.

Meteor + RN is really killer :sunglasses:

Edit: Ok, just figured out that this is not a Community Package yet… maybe in the future?

Hi @storyteller, at first glance, in the community packages I do not find zodern:types widely used as a dependency. Will this be included or will it have to be handled solely by @zodern?

The same applies to raix:eventemitter used by collection2.

Thanks.

@pbeato adding types is one specific things that I highlight in the article for people to do across the board.

@storyteller thank you for the clarification. In your article you mention the style of the code, do we use the ‘@quave/quave’ library or is there some document that describes the details?

No, we use standard where possible.

@storyteller Could you please explain better what you mean by standard? The default eslint rules?

Standard.js:

https://standardjs.com/

We’ve had a fork of tabular for a long long time. It’s got some fixes for a memory leak and we recently added the ability to plug your own search into it so we could use atlas search. I’m guessing the thrust of this will be to get everything ready for 3.0 though or are you interested in getting updates as well as 3.0 compat?

We also have an npm simple schema 2.0 fork with a fix working on nested schemas. What’s the reasoning on moving it back to a meteor package? 2.0 is a little annoying in that you have to wrap the schema with tracker to get reactivity on the client but now that’s it done it’s possibly better to keep it like that than moving it back? Or are there some other benefits?

When is the hacktoberfest ? All month ?

2 Likes

In general each package needs to have Standard.js, TS Types via zodern:types or re-written into TS, GitHubActions to run lint test and any migrate any existing tests to GitHub Actions.

@marklynch we’ll take everything, but Meteor 3 compat is going to get priority.

For simple-schema @jkuester is managing that. The idea to move back is to have everything in the same package, especially since for the latest simpl-schema you need to do a wrap for Meteor

Hacktoberfest is all month:

1 Like

The packages list is a bit large and I think it can do better with priority/strategy, in my opinion. I don’t use most of them and I’ve a large Meteor project, since I use mostly npm packages and the frontend ecosystem package (ReactJS in my case) which how it should be, why stretching us thin?

The key ones for me are the ones unique to Meteor backend and would break in 3.0 (e.g. roles). There are other infrastructure, such as packosphere, ideally these are merged with Atmosphere so it doesn’t stretch the community thin. I think the energy should be spend on things like meteor awosome, dev-tools etc that enhances the overall community with unique value add (as oppose to duplication).

I’d put low priority to blaze packages, and put in a separate section. The strategy should be to focus on packages unique to Meteor backend/collections etc that can’t be replaced with npm or another UI frontend ecosystem (react, svelte etc), why the Meteor community is still taking the load of many UI packages when it has been decoupled few years back?

Just my opinion, either-way thanks for putting this together

Everyone is going to prioritize different packages. That is not point of the list. The idea there is to give the grand overview with basic directions of what needs to be done in each, so that people can choose to work on packages that interest them or find a niche where they can have significant impact during Hacktoberfest.

2 Likes

Hi @alawi, Blaze is still widely used and is the only one of those listed that has been supported and developed since its origin by the Meteor team. I too have large applications that originated with Meteor version 0.x in which only Blaze was supported. I don’t think it is a good idea not to include it in the list. I agree that we can prioritise but certain packages are widely used and should be supported by the community anyway, e.g. collection2, redis-oplog, collection-hooks, roles, …

This is my opinion.

2 Likes

It should be included of course, my point is to focus on the common things, especially those most likely to break and specific to Meteor.

So my comment was more on priorities.
:slight_smile:

Will you please merge/push the changes you made to tabular to the community repository? I think tabular is an amazing package and since you went through the troubles of fixing things why not share your great work??


I personally wanted to help out with meteor-desktop and have already started to replace spectron with wdio-electron-service. The good thing that it shares quite similar API to spectron and meteor-desktop was built around it, even the testing APIs.

I didn’t want to bring it up initially because it’s still in the works and I don’t have much time. Plus, I’m having problems with making wdio take note of the integration testing files for some reason it can’t run them so I’d appreciate any help I can get.

1 Like

Hello @grubba, @storyteller, I’m trying to complete the migration of the packages: collection2, redis-oplog and collection-hooks, but I can’t get clarification on issues concerning the new handling of remote collections and method calls. Is the right channel the forum, slack or github issues? Thank you.

I think @grubba can provide some insight. For the initial contact either here os Slack.

Thanks @storyteller, I list the threads to which I have had no reply:

  • here, dealing with the problem of client-side use of mongo calls on remote collections
  • here, this is about support for asyncIterator supported in 2.13.3 but not in 3.0
  • In asynchronous calls to remote collections, the subscription works differently from previous versions:
Meteor.subscribe('subscribtionToCollectionA')

collectionA.insert({}, (err,id) => {
// the callback call happens after the subscription has been updated and all the documents are in the client
})

await collectionA.insert({})
// Here the subscription has not yet been completed and there is no way to tell when the data is on the client
1 Like

Hey Harry. I’ll try open a PR over the weekend. There aren’t any breaking changes AFAIK

Keeping track of things, here is the link to the PR: add eslint, custom search & fix mem leak by lynchem · Pull Request #448 · Meteor-Community-Packages/meteor-tabular · GitHub

2 Likes