Comments (7)
So what I'm talking about is that if you open a plist and parse it, you're
committing to only supporting that file. It means that configuration
profiles cannot be used.
When a mac app checks for a preference, it does a
NSUserDefaults.stringForKey("prefyourinterestedin")
, which checks the
preferences system for the value. It doesn't open a file, parse it, and
then look for a particular key in that file object. It lets the CFPrefsD
system handle that. CFPrefsd has all of that stuff cached and aggregated.
Now, do we need Recipe Robot to be able to use a configuration profile? No.
Is it so heinous to include FoundationPlist? No (python-jss does... for
now).
Is it trivial to just use PyObjC to set and get the preferences directly?
Yes.
The above things don't really swing it one way or the other for me.
BUT... If you want to have preferences for the GUI, AND you want them to be
in the same preference domain as the recipe robot python script, it would
make sense to have them do everything through NSUserDefaults since the
Swift or ObjectiveC code won't have a choice.
from recipe-robot.
OK, I'm convinced. Let's switch to PyObjC / NSUserDefaults. Want to search for references to FoundationPlist and make the appropriate changes?
from recipe-robot.
If your doing this maybe we should us nsurlconnection
On Oct 7, 2015, at 1:25 PM, Elliot Jordan [email protected] wrote:
OK, I'm convinced. Let's switch to PyObjC / NSUserDefaults. Want to search for references to FoundationPlist and make the appropriate changes?
—
Reply to this email directly or view it on GitHub.
from recipe-robot.
@eahrold Do you mean add NSURLConnection for GET requests? I'm not smart enough to do that... But I know munki has gurl.py which is a very nice python wrapper around it.
from recipe-robot.
@homebysix I removed the TODO since we have an issue for this.
I'm not feeling like making this change is super critical, unless someone feels really strongly about changing it.
from recipe-robot.
Yes, use gurl. My point was more to the effect that if we're using pyobjc for defaults there's no reason not to use other NS classes where we can.
from recipe-robot.
I mean-that would solve the SSL issues that are TODO'ed up in the code.
from recipe-robot.
Related Issues (20)
- Sparkle Feed Causes Python Explosion HOT 2
- Sparkle Feed Causes dev Branch Recipe Creation Failure
- Recipe Robot 2.0: Incorrect "Minimum System version" Requirement? HOT 1
- Sparkle Feed Explosion for non-Sparkle feed HOT 5
- Mac with Recipe Robot but no autopkg produces pinwheels with no output HOT 1
- Mac with configured default RecipeCreateLocation that doesn't exist causes failure HOT 2
- Support for JamfUploader recipes HOT 2
- Recipe Robot incorrectly suggests AppPkgCreator for a pkg inside a dmg
- Support for DMG inside a ZIP HOT 1
- PKG rather than DMG as an option for Munki recipe's HOT 1
- Switch option to specify description when you get "[WARNING] No GitHub description provided." while running Recipe Robot HOT 5
- [ERROR] Sorry, I can't determine which version key to use for this app. HOT 8
- Don't skip pkg recipe if download recipe downloads a pkg HOT 1
- Parsing BBEdit Sparkle feed causes error HOT 3
- Switch from nose to pytest based tests
- Recipe Robot curl command fails when URL contains `&` HOT 1
- Recipe Robot fails to build recipe for Kite Student Portal HOT 1
- Automate generation of the Sparkle update appcast feed
- App-icon found but not extracted anymore in version 2.3.1
- RecipeRobot --ignore-existing HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from recipe-robot.