Closed joaovitoras closed 1 year ago
Hi @joaovitoras, I can't speak for the project broadly any longer as I no longer work for Procore / work on the Blueprinter project — though I believe there are still other Blueprinter core-contributors at Procore. While I no longer work on the project, hopefully I can provide some context on the silence.
This project was initially built by Procore to support the needs of Procore, and was open-sourced when it was seen that it can provide value to the open-source community at large. Initially, Procore set aside time for the core developers to build out the project as it was needed internally. Blueprinter reached a point where the initial company needs were met and the developers got moved to other projects and we core maintainers worked on Blueprinter in more of our free time at the company to support the community. I'm sure there are still those at Procore who would love to see the project get the tender loving care and maintenance / improvements it needs to move these open source contributions along, but I can't speak for them so hopefully someone there can chime in here 😄 Thanks for your patience and understanding.
TL;DR, I no longer work for the sponsoring company (Procore) / on Blueprinter, but know there are several other core maintainers at Procore that would love to see Blueprinter get the love and care it needs (I'm only one of several people who've worked on Blueprinter). However, I know their time is stretched and they are pulled onto other projects currently so I can't speak to their future involvement here. Hoping they can chime in as well and that Blueprinter can get jumpstarted again ❤️
@mcclayton - would it be possible for you to discuss with the other maintainers within Procore (if you're still in touch with them) and see if they'd be willing to extend the maintenance of this project beyond procore? There haven't been any responses on gitter or here from them, last I tried.
let's get more maintainer here on board!
I'd be down.
It's a nice project that you have here Procore. It could be the number 1 replacement for active model serializers but if it's not actively maintained that's a problem
It'd be great if it could go open source with external maintainers as well
we also used it for part of our app, as a replacement. since it's not maintained anymore, further developing was done with active model serializers. would love to see blueprinter gets actively maintained and then we can switch eventually.
I hope Blueprinter continues on, it's been a great resource for me. But I know open source maintenance can be incredibly tricky, especially when development has been sponsored by a company. I wanted to note The Ruby Toolbox lists a few alternatives that may be worth considering for those looking: https://www.ruby-toolbox.com/categories/API_Builders. FWIW I settled on Alba for my project, and I've been quite happy with it.
I would potentially be interested in being part of a team of maintainers :v:
Please keep it alive.
I've tried reaching out to the maintainers via various forums (gitter, issues, PRs) from the past 1-1.5 years, but the project seems increasingly inactive going ahead. Even this issue has been un-responded for 6+ months from any of the official maintainers(all of whom are active employees of Procore). Hence, I've created a new fork under a new organisation account and plan on maintaining it for the foreseeable future. If there's enough traction, I will consider pushing to rubygems (under a new gem name), setting up CIs and onboarding more maintainers from across the community to avoid any future single points of failures.
I've been one of the early users of blueprinter and am one of the biggest non-employee contributors to the gem. Having invested significantly in it, I see no other ways to keep the project alive. Blueprinter is a beautiful library and we have had no complaints up until now in how it has evolved. But for its continuity, and ensuring that it doesn't go into oblivion, I'm going ahead with the fork. If the people of Procore change their minds tomorrow - and open up more contributors to the repo / move the library to a community driven organisation, I will move all the active development to that version back.
Open to thoughts from the people who have commented on this issue, wanting to keep this project alive.
Hi @ritikesh
i also used blueprinter "early" (2019) and even contributed a ~little~ tiny bit with thoughts.
i'm supporting your idea of forking and would support any new name that you can come up with and would appreciate the idea of pushing a new one to rubygems.
Thank you @ritikesh -- Feel free to loop me in if you ever need help maintaining -- You can find me on github or my personal website. Cheers!
cool @ritikesh. I hope your initiative can get some traction. I will promote it to use in my projects
The best way to do that is to update the README
stating that this gem is not longer going to be supported and linking to the fork. If Procore is not interested anymore in it (which is fair) that little update will be helpful.
@ritikesh we use Blueprinter throughout the RaiseMe codebases (raise.me) as well, would love if your fork can get some traction. I'm happy to jump on as a maintainer to help move things along as well.
i'm happy to act as a code reviewer on future PRs
so which one should we use now? 🤷
The fork has had some traction and we've pushed several updates including performance improvements, CI via github actions, support for non-AR objects to name a few. You can checkout the recent changes here and make an informed decision! 😄
so which one should we use now? 🤷
👋 Hey ya'll! My name is Jake, and I'm an engineer at Procore.
First and foremost, I wanted to apologize for the general lack of communication here. Persistent radio silence and an ever-growing list of unreviewed PRs and open issues are not the hallmarks of a well maintained open source project. I know this has caused a lot of frustration for those that are leveraging this functionality, as well as those that have been kind enough to improve and extend it.
Internal maintenance of this project has regretfully fallen off substantially over the past few years (as evident by the age of open issues and PRs). I won't try and justify this, but just know that there was never an intent to completely abandon this project.
With that said, while this comment is many years overdue, we're currently planning to fully revive Blueprinter moving forward. We've been working through plans internally on how to approach this, and we have a group of engineers that are eager to get this project back in well-maintained state.
Initially, we'll be focused on "clean up" work, which will include going through every open PR and issue and touching base with the authors, as well as providing more guidance around contributions and sharing our expectations around maintenance from here on out.
Again, we apologize for letting this project get into this state, but we're looking forward to working with ya'll on this moving forward! Please keep an eye out for updates!
@lessthanjacob maybe join the fork? you know... follow the community.
antiforking isn't great in open source
@lessthanjacob appreciate the transparency and updates. I had created the fork with the below caveat, that I'd happily move/contribute-back all the relevant changes to the upstream, provided Procore changes their mind on the maintenance front. Not having non-procore maintainers is definitely a big negative and makes the project susceptible to similar wilderness in the future.
If the people of Procore change their minds tomorrow - and open up more contributors to the repo / move the library to a community driven organisation, I will move all the active development to that version back.
@krtschmr Thank you for calling that out. As part of the initial work I mentioned above, we also planned on evaluating any forks that have moved ahead (specifically the main fork that's mentioned here that @ritikesh started), and determine if that changes our initial thoughts on how we'd like to handle this project moving forward. In any case, we certainly don't intend to ignore the will of the community here, especially after such a prolonged absence.
@ritikesh Totally agree with your sentiments. We fully intended to open this up for external maintainers moving forward. There's a few tasks that need to be completed before setting that up, but they're already underway.
Regarding the caveat you outlined, while many "tomorrows" have passed since your initial message, we'd be happy to discuss this further and come up with a plan of action. I (personally) would love to coalesce back around this repository given the history, as well as the current usage across many projects, but extending on my above comment, if the community desires to continue development on the fork instead, we wouldn't want to disregard that. We're still assessing the state of things here, so apologies if my previous message came off as ignorant to the awesome work you and the rest of the contributors have put into the fork!
Again, I want to apologize for the lack of engagement from our side of things. We're excited and committed to leaning in and working with ya'll from here on out.
thanks @lessthanjacob for recognising. we'll wait to hear soon from you. cheers.
Wanted to provide a quick update here as it's been a few weeks since my last message.
We're about to move this repository into a new organization, which will allow us to add external reviewers and maintainers. Once that's completed, I'll come back with some more information on that process, so that we can get those roles setup. This should all be happening over the next couple days.
@lessthanjacob thanks for the update. We'll also need to discuss about how we want to merge upstream changes from #blueprinter-ruby/blueprinter to this repo as well.
Wanted to provide a quick update here as it's been a few weeks since my last message.
We're about to move this repository into a new organization, which will allow us to add external reviewers and maintainers. Once that's completed, I'll come back with some more information on that process, so that we can get those roles setup. This should all be happening over the next couple days.
Hey @ritikesh! Apologies for the delay (we ran into a couple obstacles while getting things moved around here). You should have received an invitation to join the @procore-oss/procore-blueprinter team, which will give you the necessary permissions to function as an external maintainer moving forward. For any one else that'd like to become a maintainer/collaborator, we'll be providing an update in the next week or so that details that process and provides instructions for making that request.
As far as merging the upstream changes from blueprinter-ruby/blueprinter, let's go ahead and open the PR, and we can continue that discussion there!
Thanks @lessthanjacob. I'll work towards creating a PR and also setting up the process on sunsetting the fork.
Hmm, I was just about to pick a serializer, but in the face of recent developments, should I wait for @ritikesh 's fork to be sunset?
@lessthanjacob - PR raised - https://github.com/procore-oss/blueprinter/pull/327
Thanks @lessthanjacob. I'll work towards creating a PR and also setting up the process on sunsetting the fork.
Many open PRs and stuck commits since last year